commit
9c7d3a4ef1
@ -0,0 +1 @@
|
|||||||
|
SOURCES/thermald-2.5.7.tar.gz
|
@ -0,0 +1 @@
|
|||||||
|
9f25aa76ef217902dcab53f225e7d6953da55e5f SOURCES/thermald-2.5.7.tar.gz
|
@ -0,0 +1,846 @@
|
|||||||
|
From 2ffbdf7cabe94a79eab77ba3ddeb8fd0506a93f7 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Kate Hsuan <hpa@redhat.com>
|
||||||
|
Date: Tue, 16 Apr 2024 16:53:17 +0800
|
||||||
|
Subject: [PATCH 1/4] main: remove deprecated API
|
||||||
|
|
||||||
|
g_type_init() was deprecated since Glib 2.36.
|
||||||
|
---
|
||||||
|
src/main.cpp | 3 ---
|
||||||
|
1 file changed, 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/main.cpp b/src/main.cpp
|
||||||
|
index 34715cb8..135fa3ff 100644
|
||||||
|
--- a/src/main.cpp
|
||||||
|
+++ b/src/main.cpp
|
||||||
|
@@ -322,9 +322,6 @@ int main(int argc, char *argv[]) {
|
||||||
|
g_unix_signal_add (SIGTERM, G_SOURCE_FUNC (sig_int_handler), NULL);
|
||||||
|
}
|
||||||
|
|
||||||
|
- // Initialize the GType/GObject system
|
||||||
|
- g_type_init();
|
||||||
|
-
|
||||||
|
// Create a main loop that will dispatch callbacks
|
||||||
|
g_main_loop = g_main_loop_new(NULL, FALSE);
|
||||||
|
if (g_main_loop == NULL) {
|
||||||
|
|
||||||
|
From 4aeed1e59a2901d95aefe881673842b9785c8cfa Mon Sep 17 00:00:00 2001
|
||||||
|
From: Kate Hsuan <hpa@redhat.com>
|
||||||
|
Date: Tue, 16 Apr 2024 16:56:31 +0800
|
||||||
|
Subject: [PATCH 2/4] thd_engine_default: Drop modem support
|
||||||
|
|
||||||
|
Don't new a intel_modem object.
|
||||||
|
---
|
||||||
|
src/thd_engine_default.cpp | 16 +---------------
|
||||||
|
1 file changed, 1 insertion(+), 15 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/thd_engine_default.cpp b/src/thd_engine_default.cpp
|
||||||
|
index a81ecb39..330cc51d 100644
|
||||||
|
--- a/src/thd_engine_default.cpp
|
||||||
|
+++ b/src/thd_engine_default.cpp
|
||||||
|
@@ -48,9 +48,6 @@
|
||||||
|
#include "thd_sensor_rapl_power.h"
|
||||||
|
#include "thd_zone_rapl_power.h"
|
||||||
|
|
||||||
|
-#ifdef GLIB_SUPPORT
|
||||||
|
-#include "thd_cdev_modem.h"
|
||||||
|
-#endif
|
||||||
|
|
||||||
|
// Default CPU cooling devices, which are not part of thermal sysfs
|
||||||
|
// Since non trivial initialization is not supported, we init all fields even if they are not needed
|
||||||
|
@@ -622,18 +619,7 @@ int cthd_engine_default::add_replace_cdev(cooling_dev_t *config) {
|
||||||
|
}
|
||||||
|
if (!cdev_present) {
|
||||||
|
// create new
|
||||||
|
- if (config->type_string.compare("intel_modem") == 0) {
|
||||||
|
-#ifdef GLIB_SUPPORT
|
||||||
|
- /*
|
||||||
|
- * Add Modem as cdev
|
||||||
|
- * intel_modem is a modem identifier across all intel platforms.
|
||||||
|
- * The differences between the modems of various intel platforms
|
||||||
|
- * are to be taken care in the cdev implementation.
|
||||||
|
- */
|
||||||
|
- cdev = new cthd_cdev_modem(current_cdev_index, config->path_str);
|
||||||
|
-#endif
|
||||||
|
- } else
|
||||||
|
- cdev = new cthd_gen_sysfs_cdev(current_cdev_index, config->path_str);
|
||||||
|
+ cdev = new cthd_gen_sysfs_cdev(current_cdev_index, config->path_str);
|
||||||
|
if (!cdev)
|
||||||
|
return THD_ERROR;
|
||||||
|
cdev->set_cdev_type(config->type_string);
|
||||||
|
|
||||||
|
From 7fa7a2e0408d8efe570139c48c32afefc84480e9 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Kate Hsuan <hpa@redhat.com>
|
||||||
|
Date: Tue, 16 Apr 2024 17:14:16 +0800
|
||||||
|
Subject: [PATCH 3/4] build: remove thd_cdev_modem and dbus-glib
|
||||||
|
|
||||||
|
thd_cdev_modem.cpp and .h were dropped. Moreover, dbus-glib was
|
||||||
|
dropped from the build scripts.
|
||||||
|
---
|
||||||
|
Makefile.am | 12 +-
|
||||||
|
configure.ac | 12 +-
|
||||||
|
src/thd_cdev_modem.cpp | 521 -----------------------------------------
|
||||||
|
src/thd_cdev_modem.h | 64 -----
|
||||||
|
src/thermald.h | 3 -
|
||||||
|
5 files changed, 3 insertions(+), 609 deletions(-)
|
||||||
|
delete mode 100644 src/thd_cdev_modem.cpp
|
||||||
|
delete mode 100644 src/thd_cdev_modem.h
|
||||||
|
|
||||||
|
diff --git a/Makefile.am b/Makefile.am
|
||||||
|
index dd2ef103..996388a3 100644
|
||||||
|
--- a/Makefile.am
|
||||||
|
+++ b/Makefile.am
|
||||||
|
@@ -5,9 +5,9 @@ SUBDIRS = . docs data
|
||||||
|
ACLOCAL_AMFLAGS =
|
||||||
|
|
||||||
|
# Global C Flags
|
||||||
|
-AM_CFLAGS = ${DBUS_CFLAGS}
|
||||||
|
+AM_CFLAGS = ${GLIB_CFLAGS}
|
||||||
|
AM_CXXFLAGS = \
|
||||||
|
- ${DBUS_CFLAGS} \
|
||||||
|
+ $(GLIB_CFLAGS) \
|
||||||
|
$(XML_CFLAGS) \
|
||||||
|
$(UPOWER_CFLAGS) \
|
||||||
|
$(EVDEV_CFLAGS) \
|
||||||
|
@@ -30,7 +30,6 @@ thermald_CPPFLAGS = \
|
||||||
|
|
||||||
|
thermald_includedir = @top_srcdir@
|
||||||
|
thermald_LDADD = \
|
||||||
|
- $(DBUS_LIBS) \
|
||||||
|
$(GLIB_LIBS) \
|
||||||
|
$(LIBNL_LIBS) \
|
||||||
|
$(LIBM) \
|
||||||
|
@@ -39,9 +38,6 @@ thermald_LDADD = \
|
||||||
|
$(UPOWER_LIBS) \
|
||||||
|
$(EVDEV_LIBS)
|
||||||
|
|
||||||
|
-BUILT_SOURCES = \
|
||||||
|
- thd_dbus_interface.h \
|
||||||
|
- thermald-resource.c
|
||||||
|
|
||||||
|
thermald_SOURCES = \
|
||||||
|
src/main.cpp \
|
||||||
|
@@ -74,7 +70,6 @@ thermald_SOURCES = \
|
||||||
|
src/thd_cdev_rapl_dram.cpp \
|
||||||
|
src/thd_cpu_default_binding.cpp \
|
||||||
|
src/thd_cdev_backlight.cpp \
|
||||||
|
- src/thd_cdev_modem.cpp \
|
||||||
|
src/thd_int3400.cpp \
|
||||||
|
src/thd_cdev_kbl_amdgpu.cpp \
|
||||||
|
src/thd_sensor_kbl_amdgpu_power.cpp \
|
||||||
|
@@ -93,9 +88,6 @@ thermald_SOURCES = \
|
||||||
|
man5_MANS = man/thermal-conf.xml.5
|
||||||
|
man8_MANS = man/thermald.8
|
||||||
|
|
||||||
|
-thd_dbus_interface.h: $(top_srcdir)/src/thd_dbus_interface.xml
|
||||||
|
- $(AM_V_GEN) dbus-binding-tool --prefix=thd_dbus_interface --mode=glib-server --output=$@ $<
|
||||||
|
-
|
||||||
|
thermald-resource.c: $(top_srcdir)/thermald-resource.gresource.xml
|
||||||
|
$(AM_V_GEN) glib-compile-resources --generate-source thermald-resource.gresource.xml
|
||||||
|
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index 334f38fe..b72019e4 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -62,20 +62,10 @@ GETTEXT_PACKAGE=thermald
|
||||||
|
AC_SUBST(GETTEXT_PACKAGE)
|
||||||
|
AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Gettext package])
|
||||||
|
|
||||||
|
-dnl
|
||||||
|
-dnl Checks for new dbus-glib property access function
|
||||||
|
-dnl
|
||||||
|
-AC_CHECK_LIB([dbus-glib-1], [dbus_glib_global_set_disable_legacy_property_access], ac_have_dg_prop="1", ac_have_dg_prop="0")
|
||||||
|
-AC_DEFINE_UNQUOTED(HAVE_DBUS_GLIB_DISABLE_LEGACY_PROP_ACCESS, $ac_have_dg_prop, [Define if you have a dbus-glib with dbus_glib_global_set_disable_legacy_property_access()])
|
||||||
|
-
|
||||||
|
-PKG_CHECK_MODULES(DBUS, dbus-1 >= 1.1 dbus-glib-1 >= 0.94)
|
||||||
|
-AC_SUBST(DBUS_CFLAGS)
|
||||||
|
-AC_SUBST(DBUS_LIBS)
|
||||||
|
-
|
||||||
|
GLIB_VERSION_DEFINES="-DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_26"
|
||||||
|
DBUS_CFLAGS="$DBUS_CFLAGS $GLIB_VERSION_DEFINES"
|
||||||
|
|
||||||
|
-PKG_CHECK_MODULES(GLIB, gio-unix-2.0 >= 2.22 gmodule-2.0)
|
||||||
|
+PKG_CHECK_MODULES(GLIB, gio-unix-2.0 >= 2.22 gmodule-2.0 glib-2.0)
|
||||||
|
GLIB_CFLAGS="$GLIB_CFLAGS $GLIB_VERSION_DEFINES"
|
||||||
|
AC_SUBST(GLIB_CFLAGS)
|
||||||
|
AC_SUBST(GLIB_LIBS)
|
||||||
|
diff --git a/src/thd_cdev_modem.cpp b/src/thd_cdev_modem.cpp
|
||||||
|
deleted file mode 100644
|
||||||
|
index 6c3ff6cb..00000000
|
||||||
|
--- a/src/thd_cdev_modem.cpp
|
||||||
|
+++ /dev/null
|
||||||
|
@@ -1,521 +0,0 @@
|
||||||
|
-/*
|
||||||
|
- * thd_cdev_modem.cpp: thermal modem cooling implementation
|
||||||
|
- * Copyright (c) 2016, Intel Corporation.
|
||||||
|
- *
|
||||||
|
- * This program is free software; you can redistribute it and/or modify it
|
||||||
|
- * under the terms and conditions of the GNU General Public License
|
||||||
|
- * version 2 or later as published by the Free Software Foundation.
|
||||||
|
- *
|
||||||
|
- * This program is distributed in the hope it will be useful, but WITHOUT
|
||||||
|
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
|
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||||
|
- * more details.
|
||||||
|
- *
|
||||||
|
- *
|
||||||
|
- * Author Name <Rajagopalx.Aravindan@intel.com>
|
||||||
|
- *
|
||||||
|
- */
|
||||||
|
-
|
||||||
|
-/*
|
||||||
|
- * Modem Throttling Levels:
|
||||||
|
- * 0 - Disabled or No Throttling
|
||||||
|
- * 1 - Enabled
|
||||||
|
- */
|
||||||
|
-
|
||||||
|
-#include <stdint.h>
|
||||||
|
-#include <dbus/dbus.h>
|
||||||
|
-#include <string.h>
|
||||||
|
-
|
||||||
|
-#include "thd_cdev_modem.h"
|
||||||
|
-
|
||||||
|
-int cthd_cdev_modem::parse_ofono_property_changed_signal(DBusMessage* msg,
|
||||||
|
- const char* interface, const char* signal, const char* property,
|
||||||
|
- dbus_bool_t* new_value) {
|
||||||
|
- DBusMessageIter iter;
|
||||||
|
- DBusMessageIter var;
|
||||||
|
-
|
||||||
|
- char *property_name;
|
||||||
|
-
|
||||||
|
- dbus_message_iter_init(msg, &iter);
|
||||||
|
-
|
||||||
|
- if (dbus_message_iter_get_arg_type(&iter) != DBUS_TYPE_STRING) {
|
||||||
|
- thd_log_error("Invalid arguments in %s[%s]", interface, signal);
|
||||||
|
- return THD_ERROR;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- dbus_message_iter_get_basic(&iter, &property_name);
|
||||||
|
-
|
||||||
|
- if (strlen(property) != strlen(property_name)
|
||||||
|
- || strcmp(property, property_name)) {
|
||||||
|
- thd_log_error("Unsupported property : %s", property_name);
|
||||||
|
- return THD_ERROR;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- dbus_message_iter_next(&iter);
|
||||||
|
-
|
||||||
|
- if (dbus_message_iter_get_arg_type(&iter) != DBUS_TYPE_VARIANT) {
|
||||||
|
- thd_log_error("Invalid arguments in %s[%s(%s)]", interface, signal,
|
||||||
|
- property);
|
||||||
|
- return THD_ERROR;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- dbus_message_iter_recurse(&iter, &var);
|
||||||
|
-
|
||||||
|
- if (dbus_message_iter_get_arg_type(&var) != DBUS_TYPE_BOOLEAN) {
|
||||||
|
- thd_log_error("Invalid arguments in %s[%s(%s)]", interface, signal,
|
||||||
|
- property);
|
||||||
|
- return THD_ERROR;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- dbus_message_iter_get_basic(&var, new_value);
|
||||||
|
-
|
||||||
|
- return THD_SUCCESS;
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-DBusHandlerResult cthd_cdev_modem::ofono_signal_handler(DBusConnection *conn,
|
||||||
|
- DBusMessage *msg, void *user_data) {
|
||||||
|
- DBusError error;
|
||||||
|
- cthd_cdev_modem *cdev_modem = (cthd_cdev_modem *) user_data;
|
||||||
|
-
|
||||||
|
- const char *signal = "PropertyChanged";
|
||||||
|
-
|
||||||
|
- dbus_error_init(&error);
|
||||||
|
-
|
||||||
|
- if (dbus_message_is_signal(msg, THERMAL_MANAGEMENT_INTERFACE, signal)) {
|
||||||
|
- dbus_bool_t throttling;
|
||||||
|
-
|
||||||
|
- if (parse_ofono_property_changed_signal(msg,
|
||||||
|
- THERMAL_MANAGEMENT_INTERFACE, signal, "TransmitPowerThrottling",
|
||||||
|
- &throttling) != THD_SUCCESS)
|
||||||
|
- return DBUS_HANDLER_RESULT_NOT_YET_HANDLED;
|
||||||
|
-
|
||||||
|
- if (cdev_modem) {
|
||||||
|
- cdev_modem->set_throttling_state(throttling ? true : false);
|
||||||
|
-
|
||||||
|
- cdev_modem->update_online_state(conn);
|
||||||
|
- cdev_modem->update_throttling_state(conn);
|
||||||
|
- thd_log_debug("TransmitPowerThrottling Initiated");
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- return DBUS_HANDLER_RESULT_HANDLED;
|
||||||
|
- } else if (dbus_message_is_signal(msg, MODEM_INTERFACE, signal)) {
|
||||||
|
- dbus_bool_t online;
|
||||||
|
-
|
||||||
|
- if (parse_ofono_property_changed_signal(msg, MODEM_INTERFACE, signal,
|
||||||
|
- "Online", &online) != THD_SUCCESS)
|
||||||
|
- return DBUS_HANDLER_RESULT_NOT_YET_HANDLED;
|
||||||
|
-
|
||||||
|
- if (cdev_modem) {
|
||||||
|
- cdev_modem->set_online_state(online ? true : false);
|
||||||
|
- cdev_modem->update_online_state(conn);
|
||||||
|
- cdev_modem->update_throttling_state(conn);
|
||||||
|
- thd_log_debug("Modem online Initiated");
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- return DBUS_HANDLER_RESULT_HANDLED;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- return DBUS_HANDLER_RESULT_NOT_YET_HANDLED;
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-cthd_cdev_modem::cthd_cdev_modem(unsigned int _index, std::string control_path) :
|
||||||
|
- cthd_cdev(_index, "") {
|
||||||
|
- throttling = false;
|
||||||
|
- online = false;
|
||||||
|
-
|
||||||
|
- if (control_path.length() > 0)
|
||||||
|
- modem_path.assign(control_path);
|
||||||
|
- else
|
||||||
|
- modem_path.assign("/ril_0");
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-int cthd_cdev_modem::get_modem_property(DBusConnection* conn,
|
||||||
|
- const char* interface, const char* property, bool* value) {
|
||||||
|
- DBusError error;
|
||||||
|
- DBusMessage *msg;
|
||||||
|
- DBusMessage *reply;
|
||||||
|
- DBusMessageIter array;
|
||||||
|
- DBusMessageIter dict;
|
||||||
|
- int rc = THD_ERROR;
|
||||||
|
-
|
||||||
|
- dbus_error_init(&error);
|
||||||
|
-
|
||||||
|
- msg = dbus_message_new_method_call("org.ofono", modem_path.c_str(),
|
||||||
|
- interface, "GetProperties");
|
||||||
|
- if (msg == NULL) {
|
||||||
|
- thd_log_error("Error creating D-Bus message for GetProperties "
|
||||||
|
- "under %s : %s\n", modem_path.c_str(), error.message);
|
||||||
|
- return rc;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- reply = dbus_connection_send_with_reply_and_block(conn, msg, 10000, &error);
|
||||||
|
- if (dbus_error_is_set(&error)) {
|
||||||
|
- thd_log_error("Error invoking GetProperties under %s : %s\n",
|
||||||
|
- modem_path.c_str(), error.message);
|
||||||
|
- dbus_error_free(&error);
|
||||||
|
- dbus_message_unref(msg);
|
||||||
|
- return rc;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- dbus_message_unref(msg);
|
||||||
|
-
|
||||||
|
- dbus_message_iter_init(reply, &array);
|
||||||
|
- if (dbus_message_iter_get_arg_type(&array) != DBUS_TYPE_ARRAY) {
|
||||||
|
- thd_log_error("GetProperties return type not array under %s!\n",
|
||||||
|
- modem_path.c_str());
|
||||||
|
- dbus_message_unref(reply);
|
||||||
|
- return rc;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- dbus_message_iter_recurse(&array, &dict);
|
||||||
|
-
|
||||||
|
- while (dbus_message_iter_get_arg_type(&dict) == DBUS_TYPE_DICT_ENTRY) {
|
||||||
|
- DBusMessageIter key, var;
|
||||||
|
-
|
||||||
|
- char *property_name;
|
||||||
|
-
|
||||||
|
- dbus_message_iter_recurse(&dict, &key);
|
||||||
|
-
|
||||||
|
- if (dbus_message_iter_get_arg_type(&key) != DBUS_TYPE_STRING) {
|
||||||
|
- thd_log_error("GetProperties dict key type not string "
|
||||||
|
- "under %s!\n", modem_path.c_str());
|
||||||
|
- dbus_message_unref(reply);
|
||||||
|
- return rc;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- dbus_message_iter_get_basic(&key, &property_name);
|
||||||
|
-
|
||||||
|
- /* Check if, this is the property we are interested in */
|
||||||
|
- if (strlen(property) != strlen(property_name)
|
||||||
|
- || strcmp(property, property_name)) {
|
||||||
|
- dbus_message_iter_next(&dict);
|
||||||
|
- continue;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- dbus_message_iter_next(&key);
|
||||||
|
-
|
||||||
|
- if (dbus_message_iter_get_arg_type(&key) != DBUS_TYPE_VARIANT) {
|
||||||
|
- thd_log_error("GetProperties dict value type not "
|
||||||
|
- "variant under %s!\n", modem_path.c_str());
|
||||||
|
- dbus_message_unref(reply);
|
||||||
|
- return rc;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- dbus_message_iter_recurse(&key, &var);
|
||||||
|
-
|
||||||
|
- if (dbus_message_iter_get_arg_type(&var) != DBUS_TYPE_BOOLEAN) {
|
||||||
|
- thd_log_error("GetProperties dict value(1) type not "
|
||||||
|
- "boolean under %s!\n", modem_path.c_str());
|
||||||
|
- dbus_message_unref(reply);
|
||||||
|
- return rc;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- dbus_message_iter_get_basic(&var, value);
|
||||||
|
- rc = THD_SUCCESS;
|
||||||
|
- break;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- dbus_message_unref(reply);
|
||||||
|
-
|
||||||
|
- return rc;
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-int cthd_cdev_modem::update_online_state(DBusConnection* conn) {
|
||||||
|
- bool online_state;
|
||||||
|
-
|
||||||
|
- if (get_modem_property(conn, MODEM_INTERFACE, "Online",
|
||||||
|
- &online_state) == THD_SUCCESS) {
|
||||||
|
- online = online_state;
|
||||||
|
- return THD_SUCCESS;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- return THD_ERROR;
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-int cthd_cdev_modem::update_throttling_state(DBusConnection *conn) {
|
||||||
|
- bool enabled;
|
||||||
|
-
|
||||||
|
- if (get_modem_property(conn, THERMAL_MANAGEMENT_INTERFACE,
|
||||||
|
- "TransmitPowerThrottling", &enabled) == THD_SUCCESS) {
|
||||||
|
- throttling = enabled;
|
||||||
|
- return THD_SUCCESS;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- return THD_ERROR;
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-int cthd_cdev_modem::update() {
|
||||||
|
- DBusConnection *conn;
|
||||||
|
- DBusError error;
|
||||||
|
- std::string thermal_management_dbus_rule, modem_dbus_rule;
|
||||||
|
-
|
||||||
|
- /* Modem has only 2 throttling states, enabled or disabled */
|
||||||
|
- min_state = MODEM_THROTTLING_DISABLED;
|
||||||
|
- max_state = MODEM_THROTTLING_ENABLED;
|
||||||
|
-
|
||||||
|
- dbus_error_init(&error);
|
||||||
|
-
|
||||||
|
- conn = dbus_bus_get(DBUS_BUS_SYSTEM, &error);
|
||||||
|
- if (dbus_error_is_set(&error)) {
|
||||||
|
- thd_log_error("Error connecting to system bus: %s:\n", error.message);
|
||||||
|
- dbus_error_free(&error);
|
||||||
|
- return THD_ERROR;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- dbus_connection_setup_with_g_main(conn, NULL);
|
||||||
|
-
|
||||||
|
- /*
|
||||||
|
- * Add a match rule as below ...
|
||||||
|
- * Type : Signal
|
||||||
|
- * From-Interface : org.ofono.Modem
|
||||||
|
- * Signal Name : PropertyChanged
|
||||||
|
- * Property Name : Online
|
||||||
|
- */
|
||||||
|
- modem_dbus_rule.append("type='signal'");
|
||||||
|
- modem_dbus_rule.append(",path='").append(modem_path).append("'");
|
||||||
|
- modem_dbus_rule.append(",interface='" MODEM_INTERFACE "'");
|
||||||
|
- modem_dbus_rule.append(",member='PropertyChanged'");
|
||||||
|
- modem_dbus_rule.append(",arg0='Online'");
|
||||||
|
-
|
||||||
|
- dbus_bus_add_match(conn, modem_dbus_rule.c_str(), &error);
|
||||||
|
- if (dbus_error_is_set(&error)) {
|
||||||
|
- thd_log_error("Error adding D-Bus rule \"%s\" : %s",
|
||||||
|
- modem_dbus_rule.c_str(), error.message);
|
||||||
|
- dbus_error_free(&error);
|
||||||
|
- return THD_ERROR;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- /*
|
||||||
|
- * Add a match rule as below ...
|
||||||
|
- * Type : Signal
|
||||||
|
- * From-Interface : org.ofono.sofia3gr.ThermalManagement
|
||||||
|
- * Signal Name : PropertyChanged
|
||||||
|
- * Property Name : TransmitPowerThrottling
|
||||||
|
- */
|
||||||
|
- thermal_management_dbus_rule.append("type='signal'");
|
||||||
|
- thermal_management_dbus_rule.append(",path='").append(modem_path).append(
|
||||||
|
- "'");
|
||||||
|
- thermal_management_dbus_rule.append(",interface='").append(
|
||||||
|
- THERMAL_MANAGEMENT_INTERFACE).append("'");
|
||||||
|
- thermal_management_dbus_rule.append(",member='PropertyChanged'");
|
||||||
|
- thermal_management_dbus_rule.append(",arg0='TransmitPowerThrottling'");
|
||||||
|
-
|
||||||
|
- dbus_bus_add_match(conn, thermal_management_dbus_rule.c_str(), &error);
|
||||||
|
- if (dbus_error_is_set(&error)) {
|
||||||
|
- thd_log_error("Error adding D-Bus rule \"%s\" : %s",
|
||||||
|
- thermal_management_dbus_rule.c_str(), error.message);
|
||||||
|
- dbus_error_free(&error);
|
||||||
|
- return THD_ERROR;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- /* Register a handler for the above added rules */
|
||||||
|
- dbus_connection_add_filter(conn, ofono_signal_handler, this, NULL);
|
||||||
|
-
|
||||||
|
- return THD_SUCCESS;
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-int cthd_cdev_modem::get_curr_state() {
|
||||||
|
-
|
||||||
|
- if (!online) {
|
||||||
|
- update_throttling_state();
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- if (throttling) {
|
||||||
|
- curr_state = MODEM_THROTTLING_ENABLED;
|
||||||
|
- thd_log_debug("Modem currently under throttling\n");
|
||||||
|
- } else {
|
||||||
|
- curr_state = MODEM_THROTTLING_DISABLED;
|
||||||
|
- thd_log_debug("Modem currently not under throttling\n");
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- return curr_state;
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-void cthd_cdev_modem::update_throttling_state() {
|
||||||
|
-
|
||||||
|
- DBusConnection *conn;
|
||||||
|
- DBusError error;
|
||||||
|
-
|
||||||
|
- dbus_error_init(&error);
|
||||||
|
- conn = dbus_bus_get(DBUS_BUS_SYSTEM, &error);
|
||||||
|
-
|
||||||
|
- if (dbus_error_is_set(&error)) {
|
||||||
|
- thd_log_error("Error: %s", error.message);
|
||||||
|
- dbus_error_free(&error);
|
||||||
|
- return;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- dbus_connection_setup_with_g_main(conn, NULL);
|
||||||
|
-
|
||||||
|
- if (is_interface_up(conn) == THD_ERROR) {
|
||||||
|
- thd_log_warn("Thermal Interface not ready\n");
|
||||||
|
- return;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- update_online_state(conn);
|
||||||
|
- update_throttling_state(conn);
|
||||||
|
-
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-int cthd_cdev_modem::is_interface_up(DBusConnection *conn) {
|
||||||
|
-
|
||||||
|
- DBusError error;
|
||||||
|
- DBusMessage *msg;
|
||||||
|
- DBusMessage *reply;
|
||||||
|
- int rc = THD_ERROR;
|
||||||
|
-
|
||||||
|
- dbus_error_init(&error);
|
||||||
|
-
|
||||||
|
- msg = dbus_message_new_method_call("org.ofono", modem_path.c_str(),
|
||||||
|
- THERMAL_MANAGEMENT_INTERFACE, "GetProperties");
|
||||||
|
-
|
||||||
|
- if (msg == NULL) {
|
||||||
|
- thd_log_error("Error creating D-Bus message for GetProperties "
|
||||||
|
- "under %s : %s\n", modem_path.c_str(), error.message);
|
||||||
|
- return rc;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- reply = dbus_connection_send_with_reply_and_block(conn, msg, 10000, &error);
|
||||||
|
-
|
||||||
|
- if (dbus_error_is_set(&error)) {
|
||||||
|
- dbus_error_free(&error);
|
||||||
|
- dbus_message_unref(msg);
|
||||||
|
- return rc;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- dbus_message_unref(msg);
|
||||||
|
- dbus_message_unref(reply);
|
||||||
|
-
|
||||||
|
- return THD_SUCCESS;
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-void cthd_cdev_modem::set_curr_state(int state, int arg) {
|
||||||
|
-
|
||||||
|
- DBusConnection *conn;
|
||||||
|
- DBusError error;
|
||||||
|
-
|
||||||
|
- dbus_error_init(&error);
|
||||||
|
- conn = dbus_bus_get(DBUS_BUS_SYSTEM, &error);
|
||||||
|
-
|
||||||
|
- if (dbus_error_is_set(&error)) {
|
||||||
|
- thd_log_error("Error : %s", error.message);
|
||||||
|
- dbus_error_free(&error);
|
||||||
|
- return;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- dbus_connection_setup_with_g_main(conn, NULL);
|
||||||
|
-
|
||||||
|
- update_online_state(conn);
|
||||||
|
-
|
||||||
|
- switch (state) {
|
||||||
|
- case MODEM_THROTTLING_ENABLED:
|
||||||
|
- if (!online)
|
||||||
|
- thd_log_debug("Modem not yet online, hence "
|
||||||
|
- "ignoring throttle request\n");
|
||||||
|
- else if (throttling)
|
||||||
|
- thd_log_debug("Modem already throttled, hence "
|
||||||
|
- "ignoring throttle request\n");
|
||||||
|
- else {
|
||||||
|
- thd_log_debug("Initiating modem throttling\n");
|
||||||
|
- throttle_modem(state);
|
||||||
|
- update_throttling_state(conn);
|
||||||
|
- }
|
||||||
|
- break;
|
||||||
|
-
|
||||||
|
- case MODEM_THROTTLING_DISABLED:
|
||||||
|
- if (!online)
|
||||||
|
- thd_log_debug("Modem not yet online, hence "
|
||||||
|
- "ignoring de-throttle request\n");
|
||||||
|
- else if (!throttling)
|
||||||
|
- thd_log_debug("Modem already de-throttled, hence "
|
||||||
|
- "ignoring de-throttle request\n");
|
||||||
|
- else {
|
||||||
|
- thd_log_debug("Initiating modem de-throttling\n");
|
||||||
|
- throttle_modem(state);
|
||||||
|
- update_throttling_state(conn);
|
||||||
|
- }
|
||||||
|
- break;
|
||||||
|
- }
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-int cthd_cdev_modem::get_max_state() {
|
||||||
|
- return max_state;
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-int cthd_cdev_modem::is_throttling() {
|
||||||
|
- return throttling;
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-void cthd_cdev_modem::set_throttling_state(bool enabled) {
|
||||||
|
- throttling = enabled;
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-bool cthd_cdev_modem::is_online() {
|
||||||
|
- return online;
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-void cthd_cdev_modem::set_online_state(bool on) {
|
||||||
|
- online = on;
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-void cthd_cdev_modem::throttle_modem(int state) {
|
||||||
|
- DBusConnection *conn;
|
||||||
|
- DBusError error;
|
||||||
|
-
|
||||||
|
- DBusMessage *msg;
|
||||||
|
- DBusMessageIter iter;
|
||||||
|
- DBusMessageIter var;
|
||||||
|
-
|
||||||
|
- const char *property = "TransmitPowerThrottling";
|
||||||
|
-
|
||||||
|
- dbus_bool_t enable;
|
||||||
|
-
|
||||||
|
- char var_sig[] = { DBUS_TYPE_BOOLEAN, 0 };
|
||||||
|
-
|
||||||
|
- dbus_error_init(&error);
|
||||||
|
-
|
||||||
|
- conn = dbus_bus_get(DBUS_BUS_SYSTEM, &error);
|
||||||
|
- if (dbus_error_is_set(&error)) {
|
||||||
|
- thd_log_error("Couldn't connect to system bus: %s:\n", error.message);
|
||||||
|
- dbus_error_free(&error);
|
||||||
|
- return;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- msg = dbus_message_new_method_call("org.ofono", modem_path.c_str(),
|
||||||
|
- THERMAL_MANAGEMENT_INTERFACE, "SetProperty");
|
||||||
|
- if (msg == NULL) {
|
||||||
|
- thd_log_error("Couldn't create D-Bus message for SetProperty "
|
||||||
|
- "under %s : %s\n", modem_path.c_str(), error.message);
|
||||||
|
- return;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- enable = (state == MODEM_THROTTLING_ENABLED) ? true : false;
|
||||||
|
-
|
||||||
|
- dbus_message_iter_init_append(msg, &iter);
|
||||||
|
-
|
||||||
|
- if (!dbus_message_iter_append_basic(&iter, DBUS_TYPE_STRING, &property)) {
|
||||||
|
- thd_log_error("Error populating modem %s arguments: %s\n",
|
||||||
|
- enable ? "throttle" : "de-throttle", error.message);
|
||||||
|
- return;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- dbus_message_iter_open_container(&iter, DBUS_TYPE_VARIANT, var_sig, &var);
|
||||||
|
-
|
||||||
|
- if (!dbus_message_iter_append_basic(&var, DBUS_TYPE_BOOLEAN, &enable)) {
|
||||||
|
- thd_log_error("Error populating modem %s arguments: %s\n",
|
||||||
|
- enable ? "throttle" : "de-throttle", error.message);
|
||||||
|
- return;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- dbus_message_iter_close_container(&iter, &var);
|
||||||
|
-
|
||||||
|
- // send message
|
||||||
|
- if (!dbus_connection_send(conn, msg, NULL)) {
|
||||||
|
- thd_log_error("Error sending modem throttle message to %s !\n",
|
||||||
|
- modem_path.c_str());
|
||||||
|
- return;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- dbus_connection_flush(conn);
|
||||||
|
- dbus_message_unref(msg);
|
||||||
|
-}
|
||||||
|
diff --git a/src/thd_cdev_modem.h b/src/thd_cdev_modem.h
|
||||||
|
deleted file mode 100644
|
||||||
|
index c88ae7e0..00000000
|
||||||
|
--- a/src/thd_cdev_modem.h
|
||||||
|
+++ /dev/null
|
||||||
|
@@ -1,64 +0,0 @@
|
||||||
|
-/*
|
||||||
|
- * thd_cdev_modem.h: thermal modem cooling interface
|
||||||
|
- * Copyright (c) 2016, Intel Corporation.
|
||||||
|
- *
|
||||||
|
- * This program is free software; you can redistribute it and/or modify it
|
||||||
|
- * under the terms and conditions of the GNU General Public License
|
||||||
|
- * version 2 or later as published by the Free Software Foundation.
|
||||||
|
- *
|
||||||
|
- * This program is distributed in the hope it will be useful, but WITHOUT
|
||||||
|
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
|
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||||
|
- * more details.
|
||||||
|
- *
|
||||||
|
- *
|
||||||
|
- * Author Name <Rajagopalx.Aravindan@intel.com>
|
||||||
|
- *
|
||||||
|
- */
|
||||||
|
-
|
||||||
|
-#ifndef THD_CDEV_MODEM_H_
|
||||||
|
-#define THD_CDEV_MODEM_H_
|
||||||
|
-
|
||||||
|
-#include "thd_cdev.h"
|
||||||
|
-
|
||||||
|
-#define MODEM_INTERFACE "org.ofono.Modem"
|
||||||
|
-#define THERMAL_MANAGEMENT_INTERFACE "org.ofono.sofia3gr.ThermalManagement"
|
||||||
|
-
|
||||||
|
-enum modem_throttling_state {
|
||||||
|
- MODEM_THROTTLING_DISABLED = 0, MODEM_THROTTLING_ENABLED,
|
||||||
|
-};
|
||||||
|
-
|
||||||
|
-class cthd_cdev_modem: public cthd_cdev {
|
||||||
|
-private:
|
||||||
|
- std::string modem_path;
|
||||||
|
- bool online;
|
||||||
|
- bool throttling;
|
||||||
|
-
|
||||||
|
- bool is_online(void);
|
||||||
|
- void set_online_state(bool);
|
||||||
|
- int is_throttling(void);
|
||||||
|
- void set_throttling_state(bool);
|
||||||
|
- void throttle_modem(int state);
|
||||||
|
-
|
||||||
|
-public:
|
||||||
|
- cthd_cdev_modem(unsigned int _index, std::string control_path);
|
||||||
|
- int get_curr_state(void);
|
||||||
|
- void set_curr_state(int state, int arg);
|
||||||
|
- int get_max_state(void);
|
||||||
|
- int get_modem_property(DBusConnection *conn, const char *interface,
|
||||||
|
- const char *property, bool *value);
|
||||||
|
- int update_online_state(DBusConnection *conn);
|
||||||
|
- int update_throttling_state(DBusConnection *conn);
|
||||||
|
- int update(void);
|
||||||
|
- void update_throttling_state(void);
|
||||||
|
- int is_interface_up(DBusConnection *conn);
|
||||||
|
-
|
||||||
|
- static DBusHandlerResult
|
||||||
|
- ofono_signal_handler(DBusConnection *conn, DBusMessage *msg,
|
||||||
|
- void *user_data);
|
||||||
|
-
|
||||||
|
- static int
|
||||||
|
- parse_ofono_property_changed_signal(DBusMessage *msg, const char *interface,
|
||||||
|
- const char *signal, const char *property, dbus_bool_t *value);
|
||||||
|
-};
|
||||||
|
-#endif /* THD_CDEV_MODEM_H_ */
|
||||||
|
diff --git a/src/thermald.h b/src/thermald.h
|
||||||
|
index 45ee3b10..286c659d 100644
|
||||||
|
--- a/src/thermald.h
|
||||||
|
+++ b/src/thermald.h
|
||||||
|
@@ -69,9 +69,6 @@
|
||||||
|
#define LOCKF_SUPPORT
|
||||||
|
#ifdef GLIB_SUPPORT
|
||||||
|
#include <glib.h>
|
||||||
|
-#include <dbus/dbus.h>
|
||||||
|
-#include <dbus/dbus-glib-lowlevel.h>
|
||||||
|
-#include <dbus/dbus-glib.h>
|
||||||
|
#include <glib/gi18n.h>
|
||||||
|
#include <gmodule.h>
|
||||||
|
|
||||||
|
|
||||||
|
From 9124d3645dc174709b203849ff70abf989702f17 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Kate Hsuan <hpa@redhat.com>
|
||||||
|
Date: Tue, 16 Apr 2024 17:39:00 +0800
|
||||||
|
Subject: [PATCH 4/4] main: unown dbus name when thermald is terminated
|
||||||
|
|
||||||
|
Unown the dbus name when thermeld is terminated.
|
||||||
|
---
|
||||||
|
src/main.cpp | 4 ++--
|
||||||
|
src/thd_dbus_interface.cpp | 18 +++++++++---------
|
||||||
|
2 files changed, 11 insertions(+), 11 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/main.cpp b/src/main.cpp
|
||||||
|
index 135fa3ff..1ea74b76 100644
|
||||||
|
--- a/src/main.cpp
|
||||||
|
+++ b/src/main.cpp
|
||||||
|
@@ -87,7 +87,7 @@ gboolean exclusive_control = FALSE;
|
||||||
|
static GMainLoop *g_main_loop;
|
||||||
|
|
||||||
|
#ifdef GDBUS
|
||||||
|
-gint watcher_id = 0;
|
||||||
|
+gint own_id = 0;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// g_log handler. All logs will be directed here
|
||||||
|
@@ -374,7 +374,7 @@ int main(int argc, char *argv[]) {
|
||||||
|
thd_log_warn("Oops g main loop exit..\n");
|
||||||
|
|
||||||
|
#ifdef GDBUS
|
||||||
|
- g_bus_unwatch_name (watcher_id);
|
||||||
|
+ g_bus_unown_name (own_id);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
fprintf(stdout, "Exiting ..\n");
|
||||||
|
diff --git a/src/thd_dbus_interface.cpp b/src/thd_dbus_interface.cpp
|
||||||
|
index cad86ba8..c75e56c2 100644
|
||||||
|
--- a/src/thd_dbus_interface.cpp
|
||||||
|
+++ b/src/thd_dbus_interface.cpp
|
||||||
|
@@ -588,7 +588,7 @@ gboolean thd_dbus_interface_get_sensor_temperature(PrefObject *obj, int index,
|
||||||
|
#pragma GCC diagnostic push
|
||||||
|
|
||||||
|
static GDBusInterfaceVTable interface_vtable;
|
||||||
|
-extern gint watcher_id;
|
||||||
|
+extern gint own_id;
|
||||||
|
|
||||||
|
static GDBusNodeInfo *
|
||||||
|
thd_dbus_load_introspection(const gchar *filename, GError **error)
|
||||||
|
@@ -1230,14 +1230,14 @@ int thd_dbus_server_init(gboolean (*exit_handler)(void)) {
|
||||||
|
interface_vtable.get_property = thd_dbus_handle_get_property;
|
||||||
|
interface_vtable.set_property = thd_dbus_handle_set_property;
|
||||||
|
|
||||||
|
- watcher_id = g_bus_own_name(G_BUS_TYPE_SYSTEM,
|
||||||
|
- "org.freedesktop.thermald",
|
||||||
|
- G_BUS_NAME_OWNER_FLAGS_REPLACE,
|
||||||
|
- thd_dbus_on_bus_acquired,
|
||||||
|
- thd_dbus_on_name_acquired,
|
||||||
|
- thd_dbus_on_name_lost,
|
||||||
|
- g_object_ref(value_obj),
|
||||||
|
- NULL);
|
||||||
|
+ own_id = g_bus_own_name(G_BUS_TYPE_SYSTEM,
|
||||||
|
+ "org.freedesktop.thermald",
|
||||||
|
+ G_BUS_NAME_OWNER_FLAGS_REPLACE,
|
||||||
|
+ thd_dbus_on_bus_acquired,
|
||||||
|
+ thd_dbus_on_name_acquired,
|
||||||
|
+ thd_dbus_on_name_lost,
|
||||||
|
+ g_object_ref(value_obj),
|
||||||
|
+ NULL);
|
||||||
|
|
||||||
|
return THD_SUCCESS;
|
||||||
|
}
|
@ -0,0 +1,429 @@
|
|||||||
|
## START: Set by rpmautospec
|
||||||
|
## (rpmautospec version 0.6.1)
|
||||||
|
## RPMAUTOSPEC: autorelease, autochangelog
|
||||||
|
%define autorelease(e:s:pb:n) %{?-p:0.}%{lua:
|
||||||
|
release_number = 4;
|
||||||
|
base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}"));
|
||||||
|
print(release_number + base_release_number - 1);
|
||||||
|
}%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}}
|
||||||
|
## END: Set by rpmautospec
|
||||||
|
|
||||||
|
%global pkgname thermal_daemon
|
||||||
|
|
||||||
|
%bcond qt %[%{undefined rhel} || 0%{?rhel} < 10]
|
||||||
|
|
||||||
|
Name: thermald
|
||||||
|
Version: 2.5.7
|
||||||
|
Release: %autorelease
|
||||||
|
Summary: Thermal Management daemon
|
||||||
|
|
||||||
|
License: GPLv2+
|
||||||
|
URL: https://github.com/intel/%{pkgname}
|
||||||
|
Source0: %{url}/archive/v%{version}/%{name}-%{version}.tar.gz
|
||||||
|
|
||||||
|
# https://github.com/intel/thermal_daemon/pull/441
|
||||||
|
# Deprecate intel-modem and dbus-glib
|
||||||
|
Patch001: 441.patch
|
||||||
|
|
||||||
|
# No cpuid.h on other arches.
|
||||||
|
ExclusiveArch: %{ix86} x86_64
|
||||||
|
|
||||||
|
BuildRequires: make
|
||||||
|
BuildRequires: autoconf autoconf-archive
|
||||||
|
BuildRequires: automake
|
||||||
|
BuildRequires: desktop-file-utils
|
||||||
|
BuildRequires: gcc-c++
|
||||||
|
BuildRequires: libxml2-devel
|
||||||
|
BuildRequires: systemd-rpm-macros
|
||||||
|
BuildRequires: upower-devel
|
||||||
|
BuildRequires: libevdev-devel
|
||||||
|
BuildRequires: gtk-doc
|
||||||
|
|
||||||
|
Requires: dbus%{?_isa}
|
||||||
|
|
||||||
|
Requires(pre): glibc-common
|
||||||
|
Requires(pre): shadow-utils
|
||||||
|
|
||||||
|
%{?systemd_requires}
|
||||||
|
|
||||||
|
%description
|
||||||
|
%{name} monitors and controls platform temperature.
|
||||||
|
|
||||||
|
Thermal issues are important to handle proactively to reduce performance
|
||||||
|
impact. %{name} uses the existing Linux kernel infrastructure and can
|
||||||
|
be easily enhanced.
|
||||||
|
|
||||||
|
|
||||||
|
%if %{with qt}
|
||||||
|
%package monitor
|
||||||
|
Summary: Application for monitoring %{name}
|
||||||
|
License: GPLv3+
|
||||||
|
|
||||||
|
BuildRequires: qcustomplot-qt5-devel
|
||||||
|
BuildRequires: qt5-qtbase-devel
|
||||||
|
|
||||||
|
Requires: hicolor-icon-theme
|
||||||
|
Requires: %{name}%{?_isa} == %{version}-%{release}
|
||||||
|
|
||||||
|
%description monitor
|
||||||
|
This package contains an Application to monitor %{name} for system
|
||||||
|
developers who want to enable application developers and their
|
||||||
|
customers with the responsive and flexible thermal management,
|
||||||
|
supporting optimal performance in desktop, clam-shell, mobile and
|
||||||
|
embedded devices.
|
||||||
|
%endif
|
||||||
|
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%autosetup -n %{pkgname}-%{version} -p 1
|
||||||
|
|
||||||
|
# Create tmpfiles.d config.
|
||||||
|
mkdir -p fedora_addons
|
||||||
|
cat << EOF > fedora_addons/%{name}.conf
|
||||||
|
d %{_rundir}/%{name} 0755 root root -
|
||||||
|
EOF
|
||||||
|
|
||||||
|
%if %{with qt}
|
||||||
|
# Create desktop-file for the monitor-app.
|
||||||
|
cat << EOF > fedora_addons/%{name}-monitor.desktop
|
||||||
|
[Desktop Entry]
|
||||||
|
Name=%{name} Monitor
|
||||||
|
Comment=Application for monitoring %{name}
|
||||||
|
Icon=%{name}-monitor
|
||||||
|
Categories=System;Settings;
|
||||||
|
Exec=%{_bindir}/ThermalMonitor
|
||||||
|
Type=Application
|
||||||
|
StartupNotify=true
|
||||||
|
Terminal=false
|
||||||
|
EOF
|
||||||
|
|
||||||
|
# Create icon for the monitor-app.
|
||||||
|
cat << EOF > fedora_addons/%{name}-monitor.svg
|
||||||
|
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||||
|
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||||
|
viewBox="0 0 512 512" style="enable-background:new 0 0 512 512;" xml:space="preserve">
|
||||||
|
<path style="fill:#EFEFEF;" d="M501.106,256c0,33.661-6.787,65.732-19.064,94.927L256,239.66L29.957,350.927
|
||||||
|
C17.68,321.732,10.894,289.661,10.894,256C10.894,120.636,120.636,10.894,256,10.894S501.106,120.636,501.106,256z"/>
|
||||||
|
<path style="fill:#F15A29;" d="M430.294,256c0,22.43-4.238,43.869-11.961,63.564l-96.202-47.355c1.264-5.196,1.95-10.621,1.95-16.21
|
||||||
|
c0-18.802-7.626-35.818-19.935-48.15l75.101-75.101C410.783,164.298,430.294,207.872,430.294,256z"/>
|
||||||
|
<path style="fill:#FBA026;" d="M418.332,319.564c-25.393,64.828-88.5,110.734-162.337,110.734
|
||||||
|
c-73.826,0-136.933-45.895-162.337-110.723C85.935,299.879,81.698,278.43,81.698,256c0-96.256,78.042-174.298,174.298-174.298
|
||||||
|
c48.128,0,91.702,19.51,123.25,51.047l-75.101,75.101c12.31,12.332,19.935,29.347,19.935,48.15c0,5.588-0.686,11.013-1.95,16.21
|
||||||
|
L418.332,319.564z"/>
|
||||||
|
<path style="fill:#27AAE1;" d="M482.038,350.927c-37.093,88.227-124.34,150.179-226.043,150.179S67.046,439.154,29.953,350.927
|
||||||
|
l63.706-31.352l96.212-47.365c-1.264-5.196-1.961-10.621-1.961-16.21c0-37.605,30.491-68.085,68.085-68.085
|
||||||
|
c18.802,0,35.818,7.626,48.15,19.935c12.31,12.332,19.935,29.347,19.935,48.15c0,5.588-0.686,11.013-1.95,16.21l96.202,47.355
|
||||||
|
L482.038,350.927z"/>
|
||||||
|
<circle style="fill:#EFEFEF;" cx="256" cy="256" r="21.787"/>
|
||||||
|
<g>
|
||||||
|
<path style="fill:#231F20;" d="M191.566,307.802l-77.373,38.086c-5.398,2.657-7.62,9.187-4.963,14.584
|
||||||
|
c1.895,3.851,5.762,6.085,9.781,6.085c1.614,0,3.255-0.362,4.802-1.122l77.373-38.087c5.398-2.657,7.62-9.187,4.963-14.584
|
||||||
|
C203.495,307.369,196.965,305.147,191.566,307.802z"/>
|
||||||
|
<path style="fill:#231F20;" d="M245.106,457.532c0,6.017,4.878,10.894,10.894,10.894c28.936,0,57.027-5.721,83.495-17.005
|
||||||
|
c26.031-11.098,49.226-27.021,68.936-47.325c4.192-4.316,4.088-11.213-0.228-15.405c-4.317-4.19-11.213-4.087-15.405,0.229
|
||||||
|
c-36.133,37.22-84.715,57.719-136.799,57.719C249.985,446.638,245.106,451.515,245.106,457.532z"/>
|
||||||
|
<path style="fill:#231F20;" d="M415.931,379.26c1.884,1.293,4.028,1.912,6.153,1.912c3.47,0,6.88-1.655,8.993-4.731l0.15-0.219
|
||||||
|
c3.403-4.961,2.142-11.742-2.82-15.145c-4.958-3.403-11.74-2.142-15.145,2.819l-0.15,0.219
|
||||||
|
C409.708,369.076,410.969,375.856,415.931,379.26z"/>
|
||||||
|
<path style="fill:#231F20;" d="M288.681,256.002c0-18.02-14.661-32.681-32.681-32.681s-32.681,14.661-32.681,32.681
|
||||||
|
S237.98,288.683,256,288.683S288.681,274.022,288.681,256.002z M245.106,256.002c0-6.007,4.887-10.894,10.894-10.894
|
||||||
|
c6.007,0,10.894,4.887,10.894,10.894c0,6.007-4.887,10.894-10.894,10.894C249.993,266.896,245.106,262.009,245.106,256.002z"/>
|
||||||
|
<path style="fill:#231F20;" d="M512,256c0-68.378-26.628-132.665-74.982-181.017S324.379,0,256,0
|
||||||
|
C187.622,0,123.335,26.629,74.982,74.983C26.629,123.335,0,187.622,0,256c0,34.321,6.685,67.638,19.868,99.032
|
||||||
|
c0.015,0.039,0.026,0.078,0.042,0.118C59.97,450.433,152.639,512,255.996,512s196.025-61.567,236.085-156.851
|
||||||
|
c0,0,0-0.001,0.001-0.002l0.002,0.003C505.299,323.726,512,290.367,512,256z M255.996,490.213
|
||||||
|
c-91.135,0-173.186-52.313-211.823-134.142l150.511-74.087c4.58-2.255,6.98-7.387,5.774-12.348
|
||||||
|
c-1.097-4.507-1.653-9.095-1.653-13.636c0-31.536,25.657-57.191,57.191-57.191c15.265,0,29.632,5.949,40.44,16.738
|
||||||
|
c10.802,10.822,16.751,25.188,16.751,40.453c0,4.57-0.552,9.157-1.642,13.636c-1.206,4.961,1.194,10.094,5.775,12.348
|
||||||
|
l150.499,74.086C429.182,437.898,347.131,490.213,255.996,490.213z M92.591,256c0-90.101,73.303-163.404,163.404-163.404
|
||||||
|
c39.988,0,77.792,14.274,107.592,40.406l-59.981,59.984c-13.652-10.349-30.203-15.964-47.611-15.964
|
||||||
|
c-43.549,0-78.979,35.429-78.979,78.979c0,3.354,0.218,6.721,0.651,10.076l-77.795,38.292
|
||||||
|
C95.042,288.781,92.591,272.563,92.591,256z M378.993,148.407C405.126,178.206,419.4,216.011,419.4,256
|
||||||
|
c0,16.559-2.443,32.779-7.276,48.367l0.001,0.002l-77.797-38.297c0.43-3.344,0.646-6.712,0.646-10.072
|
||||||
|
c0-17.413-5.618-33.97-15.981-47.631l0.031,0.01L378.993,148.407z M431.875,314.091c6.176-18.676,9.312-38.169,9.312-58.091
|
||||||
|
c0-45.811-16.535-89.081-46.766-123.018l5.449-5.448c4.254-4.254,4.254-11.152,0-15.406c-4.253-4.254-11.149-4.254-15.407,0
|
||||||
|
l-5.449,5.449c-33.938-30.232-77.207-46.768-123.018-46.768C153.881,70.809,70.804,153.885,70.804,256
|
||||||
|
c0,19.926,3.134,39.421,9.309,58.095L35.774,335.92c-9.286-25.546-13.986-52.377-13.986-79.92
|
||||||
|
C21.787,126.855,126.854,21.787,256,21.787S490.213,126.855,490.213,256c0,27.547-4.701,54.378-13.987,79.922l0.002,0.003
|
||||||
|
L431.875,314.091z"/>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
EOF
|
||||||
|
|
||||||
|
# Create ReadMe.txt for the monitor-app.
|
||||||
|
cat << EOF > fedora_addons/%{name}-monitor.ReadMe.txt
|
||||||
|
Running the thermald-monitor-app
|
||||||
|
--------------------------------
|
||||||
|
|
||||||
|
To communicate with thermald via dbus, the user has to be member
|
||||||
|
of the "power" group. So make sure to add your user id to this
|
||||||
|
group before using the thermald-monitor-app.
|
||||||
|
EOF
|
||||||
|
%endif
|
||||||
|
|
||||||
|
NO_CONFIGURE=1 ./autogen.sh
|
||||||
|
|
||||||
|
|
||||||
|
%build
|
||||||
|
%configure \
|
||||||
|
--with-systemdsystemunitdir=%{_unitdir} \
|
||||||
|
--disable-option-checking \
|
||||||
|
--disable-silent-rules
|
||||||
|
|
||||||
|
%make_build
|
||||||
|
|
||||||
|
%if %{with qt}
|
||||||
|
# Build the monitor-app.
|
||||||
|
pushd tools/thermal_monitor
|
||||||
|
sed -i -e 's/QCustomPlot/qcustomplot-qt5/' ThermalMonitor.pro
|
||||||
|
mkdir -p %{_target_platform}
|
||||||
|
pushd %{_target_platform}
|
||||||
|
%{qmake_qt5} ..
|
||||||
|
%make_build
|
||||||
|
popd
|
||||||
|
popd
|
||||||
|
%endif
|
||||||
|
|
||||||
|
|
||||||
|
%install
|
||||||
|
%make_install
|
||||||
|
|
||||||
|
# Install management-script.
|
||||||
|
install -Dpm 0755 tools/thermald_set_pref.sh \
|
||||||
|
%{buildroot}%{_bindir}/%{name}-set-pref
|
||||||
|
|
||||||
|
# Setup tmpfiles.d
|
||||||
|
install -Dpm 0644 fedora_addons/%{name}.conf %{buildroot}%{_tmpfilesdir}/%{name}.conf
|
||||||
|
install -dm 0755 %{buildroot}%{_rundir}/%{name}
|
||||||
|
/bin/echo "%{name}_pid" > %{buildroot}%{_rundir}/%{name}/%{name}.pid
|
||||||
|
chmod -c 0644 %{buildroot}%{_rundir}/%{name}/%{name}.pid
|
||||||
|
|
||||||
|
%if %{with qt}
|
||||||
|
# Install the monitor-app.
|
||||||
|
install -Dpm 0755 tools/thermal_monitor/%{_target_platform}/ThermalMonitor \
|
||||||
|
%{buildroot}%{_bindir}/ThermalMonitor
|
||||||
|
install -Dpm 0644 fedora_addons/%{name}-monitor.desktop \
|
||||||
|
%{buildroot}%{_datadir}/applications/%{name}-monitor.desktop
|
||||||
|
install -Dpm 0644 fedora_addons/%{name}-monitor.svg \
|
||||||
|
%{buildroot}%{_datadir}/icons/hicolor/scalable/apps/%{name}-monitor.svg
|
||||||
|
%endif
|
||||||
|
|
||||||
|
|
||||||
|
%check
|
||||||
|
%if %{with qt}
|
||||||
|
%{_bindir}/desktop-file-validate %{buildroot}%{_datadir}/applications/*.desktop
|
||||||
|
%endif
|
||||||
|
|
||||||
|
|
||||||
|
%pre
|
||||||
|
/bin/getent group power >/dev/null || /sbin/groupadd -r power
|
||||||
|
exit 0
|
||||||
|
|
||||||
|
|
||||||
|
%post
|
||||||
|
%systemd_post thermald.service
|
||||||
|
|
||||||
|
|
||||||
|
%preun
|
||||||
|
%systemd_preun thermald.service
|
||||||
|
|
||||||
|
|
||||||
|
%postun
|
||||||
|
%systemd_postun_with_restart thermald.service
|
||||||
|
|
||||||
|
%files
|
||||||
|
%license COPYING
|
||||||
|
%config(noreplace) %{_sysconfdir}/%{name}
|
||||||
|
%doc README.txt thermal_daemon_usage.txt
|
||||||
|
%ghost %dir %{_rundir}/%{name}
|
||||||
|
%ghost %{_rundir}/%{name}/%{name}.pid
|
||||||
|
%{_bindir}/%{name}-set-pref
|
||||||
|
%{_datadir}/dbus-1/system-services/org.freedesktop.%{name}.service
|
||||||
|
%{_datadir}/dbus-1/system.d/org.freedesktop.%{name}.conf
|
||||||
|
%{_mandir}/man5/thermal-conf.xml.5*
|
||||||
|
%{_mandir}/man8/%{name}.8*
|
||||||
|
%{_sbindir}/%{name}
|
||||||
|
%{_tmpfilesdir}/%{name}.conf
|
||||||
|
%{_unitdir}/%{name}.service
|
||||||
|
|
||||||
|
|
||||||
|
%if %{with qt}
|
||||||
|
%files monitor
|
||||||
|
%doc fedora_addons/%{name}-monitor.ReadMe.txt
|
||||||
|
%license tools/thermal_monitor/COPYING
|
||||||
|
%{_bindir}/ThermalMonitor
|
||||||
|
%{_datadir}/applications/%{name}-monitor.desktop
|
||||||
|
%{_datadir}/icons/hicolor/scalable/apps/%{name}-monitor.svg
|
||||||
|
%endif
|
||||||
|
|
||||||
|
|
||||||
|
%changelog
|
||||||
|
* Tue Nov 26 2024 MSVSphere Packaging Team <packager@msvsphere-os.ru> - 2.5.7-4
|
||||||
|
- Rebuilt for MSVSphere 10
|
||||||
|
|
||||||
|
## START: Generated by rpmautospec
|
||||||
|
* Mon Jun 24 2024 Troy Dawson <tdawson@redhat.com> - 2.5.7-4
|
||||||
|
- Bump release for June 2024 mass rebuild
|
||||||
|
|
||||||
|
* Mon Jun 10 2024 Jiří Koten <jkoten@redhat.com> - 2.5.7-3
|
||||||
|
- Fix the gating test.
|
||||||
|
|
||||||
|
* Tue May 28 2024 Kate Hsuan <hpa@redhat.com> - 2.5.7-2
|
||||||
|
- Add gating definition for RHEL-10
|
||||||
|
|
||||||
|
* Tue May 21 2024 Kate Hsuan <hpa@redhat.com> - 2.5.7-1
|
||||||
|
- RHEL-37515 Update to release 2.5.7 and remove dbus-glib dependency
|
||||||
|
|
||||||
|
* Sun Feb 11 2024 Peter Robinson <pbrobinson@gmail.com> - 2.5.6-1
|
||||||
|
- Update to 2.5.6, spec cleanups
|
||||||
|
|
||||||
|
* Sat Jan 27 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.5-7
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||||
|
|
||||||
|
* Wed Aug 16 2023 Yaakov Selkowitz <yselkowi@redhat.com> - 2.5-6
|
||||||
|
- Disable monitor in RHEL builds
|
||||||
|
|
||||||
|
* Sun Jul 23 2023 Yaakov Selkowitz <yselkowi@redhat.com> - 2.5-5
|
||||||
|
- Fix build with latest systemd
|
||||||
|
|
||||||
|
* Sat Jul 22 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.5-4
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
||||||
|
|
||||||
|
* Sat Jan 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.5-3
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
|
||||||
|
|
||||||
|
* Wed Aug 17 2022 Kalev Lember <klember@redhat.com> - 2.5-2
|
||||||
|
- Fix the build
|
||||||
|
|
||||||
|
* Tue Aug 16 2022 Kalev Lember <klember@redhat.com> - 2.5-1
|
||||||
|
- Update to 2.5
|
||||||
|
|
||||||
|
* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.4.8-5
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
||||||
|
|
||||||
|
* Wed Feb 09 2022 Benjamin Berg <bberg@redhat.com> - 2.4.8-4
|
||||||
|
- Pull in adaptive fixes/improvements and p-p-d integration
|
||||||
|
|
||||||
|
* Sat Jan 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.4.8-2
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
|
||||||
|
|
||||||
|
* Wed Jan 12 2022 Benjamin Berg <bberg@redhat.com> - 2.4.8-1
|
||||||
|
- Update to 2.4.8 (#2038523)
|
||||||
|
|
||||||
|
* Wed Nov 24 2021 Benjamin Berg <bberg@redhat.com> - 2.4.6-3
|
||||||
|
- Pull AlderLake and JasperLake support from upstream
|
||||||
|
|
||||||
|
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.4.6-2
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
||||||
|
|
||||||
|
* Thu Jun 10 2021 Benjamin Berg <bberg@redhat.com> - 2.4.6-1
|
||||||
|
- Update to 2.4.6 (#1965783)
|
||||||
|
- Update main license to GPLv2 only for now
|
||||||
|
- Add bundled(qcustomplot) for monitor subpackage
|
||||||
|
|
||||||
|
* Fri May 14 2021 Benjamin Berg <bberg@redhat.com> - 2.4.4-1
|
||||||
|
- Update to 2.4.4
|
||||||
|
Resolves: #1935728
|
||||||
|
|
||||||
|
* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 2.4.1-4
|
||||||
|
- Rebuilt for updated systemd-rpm-macros
|
||||||
|
See https://pagure.io/fesco/issue/2583.
|
||||||
|
|
||||||
|
* Tue Feb 02 2021 Benjamin Berg <bberg@redhat.com> - 2.4.1-3
|
||||||
|
- Add upstream patch fixing parsing of passive targets
|
||||||
|
|
||||||
|
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.4.1-2
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||||
|
|
||||||
|
* Tue Dec 01 2020 Benjamin Berg <bberg@redhat.com> - 2.4.1-1
|
||||||
|
- New upstream release (#1903094)
|
||||||
|
|
||||||
|
* Thu Nov 26 2020 Benjamin Berg <bberg@redhat.com> - 2.4-1
|
||||||
|
- New upstream release (#1901810)
|
||||||
|
Resolves: #1894178
|
||||||
|
Resolves: #1892534
|
||||||
|
|
||||||
|
* Tue Sep 01 2020 Benjamin Berg <bberg@redhat.com> - 2.3-2
|
||||||
|
- Fix Lenovo kill switch (#1874462)
|
||||||
|
|
||||||
|
* Tue Aug 25 2020 Benjamin Berg <bberg@redhat.com> - 2.3-1
|
||||||
|
- New upstream release 2.3 (rhbz#1866784)
|
||||||
|
- Add patch to fix printf on non-64 bit
|
||||||
|
|
||||||
|
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.2-2
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||||
|
|
||||||
|
* Mon Jun 08 2020 Benjamin Berg <bberg@redhat.com> - 2.2-1
|
||||||
|
- New upstream release 2.2 (rhbz#1827883)
|
||||||
|
|
||||||
|
* Fri Jan 31 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.9.1-2
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
||||||
|
|
||||||
|
* Wed Dec 18 2019 Benjamin Berg <bberg@redhat.com> - 1.9.1-1
|
||||||
|
- New upstream release 1.9 (rhbz#1782249)
|
||||||
|
- Drop Patch0, it has been merged upstream
|
||||||
|
|
||||||
|
* Fri Sep 20 2019 Christian Kellner <ckellner@redhat.com> - 1.9-1
|
||||||
|
- New upstream release 1.9 (rhbz#1742290)
|
||||||
|
- Update patch0 (taken from upstream, commit dcdaf52...)
|
||||||
|
|
||||||
|
* Sat Jul 27 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.8-3
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
||||||
|
|
||||||
|
* Fri May 17 2019 Benjamin Berg <bberg@redhat.com> - 1.8-2
|
||||||
|
- Fix build on i686
|
||||||
|
|
||||||
|
* Fri May 17 2019 Benjamin Berg <bberg@redhat.com> - 1.8-1
|
||||||
|
- New upstream release (#1582506)
|
||||||
|
|
||||||
|
* Sun Feb 03 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.1-4
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
||||||
|
|
||||||
|
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.1-3
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
||||||
|
|
||||||
|
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.1-2
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
||||||
|
|
||||||
|
* Thu Dec 28 2017 Björn Esser <besser82@fedoraproject.org> - 1.7.1-1
|
||||||
|
- New upstream release (#1505144)
|
||||||
|
|
||||||
|
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.6-8
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
|
||||||
|
|
||||||
|
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.6-7
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
|
||||||
|
|
||||||
|
* Sat Jul 01 2017 Björn Esser <besser82@fedoraproject.org> - 1.6-6
|
||||||
|
- Add upstreamed patch to silence compiler warnings
|
||||||
|
|
||||||
|
* Sat Jul 01 2017 Björn Esser <besser82@fedoraproject.org> - 1.6-5
|
||||||
|
- Replace fix for rhbz#1464548 from upstream commit
|
||||||
|
- Add upstream patch to fix README
|
||||||
|
|
||||||
|
* Fri Jun 30 2017 Björn Esser <besser82@fedoraproject.org> - 1.6-4
|
||||||
|
- Add upstream patch to fix ThermalMonitor (rhbz#1464548)
|
||||||
|
- Add several fixes from upstream
|
||||||
|
|
||||||
|
* Tue Apr 11 2017 Björn Esser <besser82@fedoraproject.org> - 1.6-3
|
||||||
|
- Explicitly turn on hardening, if required
|
||||||
|
|
||||||
|
* Tue Apr 11 2017 Björn Esser <besser82@fedoraproject.org> - 1.6-2
|
||||||
|
- Fix missing trailing semicolon in desktop-file
|
||||||
|
|
||||||
|
* Tue Apr 11 2017 Björn Esser <besser82@fedoraproject.org> - 1.6-1
|
||||||
|
- Initial import (rhbz#1440406)
|
||||||
|
|
||||||
|
* Mon Apr 10 2017 Björn Esser <besser82@fedoraproject.org> - 1.6-0.4
|
||||||
|
- Use qmake_qt5-macro and build out of tree
|
||||||
|
|
||||||
|
* Sat Apr 08 2017 Björn Esser <besser82@fedoraproject.org> - 1.6-0.3
|
||||||
|
- Small packaging improvements
|
||||||
|
|
||||||
|
* Sat Apr 08 2017 Björn Esser <besser82@fedoraproject.org> - 1.6-0.2
|
||||||
|
- Add management-script
|
||||||
|
|
||||||
|
* Sat Apr 08 2017 Björn Esser <besser82@fedoraproject.org> - 1.6-0.1
|
||||||
|
- Initial rpm-release (rhbz#1440406)
|
||||||
|
|
||||||
|
## END: Generated by rpmautospec
|
Loading…
Reference in new issue