File 9fc0e4ff6186e3aee3d3350e9f1b062aa6e161fe.patch of Package transmission

From 9fc0e4ff6186e3aee3d3350e9f1b062aa6e161fe Mon Sep 17 00:00:00 2001
From: Charles Kerr <charles@charleskerr.com>
Date: Fri, 24 Mar 2023 13:34:30 -0500
Subject: [PATCH] fix: disable-deprecated by default for end users (#5289)

deprecations can be turned on manually and are auto-enabled in CI
---
 CMakeLists.txt     |  9 +++++++++
 gtk/CMakeLists.txt | 32 +++++++++++++++++++++-----------
 2 files changed, 30 insertions(+), 11 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index d31fa6558a..2d0daa49bb 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -56,6 +56,7 @@ option(ENABLE_WERROR "Treat warnings as errors" OFF)
 option(ENABLE_NLS "Enable native language support" ON)
 option(INSTALL_DOC "Build/install documentation" ON)
 option(INSTALL_LIB "Install the library" OFF)
+option(DISABLE_DEPRECATED "Set 'disable deprecated' option for upstream packages, e.g. GTK" AUTO)
 tr_auto_option(RUN_CLANG_TIDY "Run clang-tidy on the code" OFF)
 tr_auto_option(USE_SYSTEM_EVENT2 "Use system event2 library" AUTO)
 tr_auto_option(USE_SYSTEM_DEFLATE "Use system deflate library" AUTO)
@@ -215,6 +216,14 @@ if(NOT TARGET CURL::libcurl)
     target_include_directories(CURL::libcurl INTERFACE ${CURL_INCLUDE_DIRS})
 endif()
 
+if(DISABLE_DEPRECATED STREQUAL "AUTO")
+  if(DEFINED ENV{CI})
+    set(DISABLE_DEPRECATED ON)
+  else()
+    set(DISABLE_DEPRECATED OFF)
+  endif()
+endif()
+
 set(CRYPTO_PKG "")
 if(WITH_CRYPTO STREQUAL "AUTO" OR WITH_CRYPTO STREQUAL "ccrypto")
     tr_get_required_flag(WITH_CRYPTO CCRYPTO_IS_REQUIRED)
diff --git a/gtk/CMakeLists.txt b/gtk/CMakeLists.txt
index 0d2499f594..9a0b99ab67 100644
--- a/gtk/CMakeLists.txt
+++ b/gtk/CMakeLists.txt
@@ -158,22 +158,32 @@ target_compile_definitions(${TR_NAME}-gtk
     PRIVATE
         TRANSMISSIONLOCALEDIR="${CMAKE_INSTALL_FULL_LOCALEDIR}"
         GETTEXT_PACKAGE="${TR_NAME}-gtk"
-        G_DISABLE_DEPRECATED
-        GDK_PIXBUF_DISABLE_DEPRECATED
-        GDK_DISABLE_DEPRECATED
-        GTK_DISABLE_DEPRECATED
-        PANGO_DISABLE_DEPRECATED
         # FIXME: these break libnotify's headers
         # G_DISABLE_SINGLE_INCLUDES
         # GTK_DISABLE_SINGLE_INCLUDES
-        GDKMM_DISABLE_DEPRECATED
-        GIOMM_DISABLE_DEPRECATED
-        GLIBMM_DISABLE_DEPRECATED
-        GTKMM_DISABLE_DEPRECATED
-        PANGOMM_DISABLE_DEPRECATED
-        SIGCXX_DISABLE_DEPRECATED
         $<$<BOOL:${ENABLE_UTP}>:WITH_UTP>)
 
+if(DISABLE_DEPRECATED)
+	target_compile_definitions(${TR_NAME}-gtk
+	    PRIVATE
+		TRANSMISSIONLOCALEDIR="${CMAKE_INSTALL_FULL_LOCALEDIR}"
+		GETTEXT_PACKAGE="${TR_NAME}-gtk"
+		G_DISABLE_DEPRECATED
+		GDK_PIXBUF_DISABLE_DEPRECATED
+		GDK_DISABLE_DEPRECATED
+		GTK_DISABLE_DEPRECATED
+		PANGO_DISABLE_DEPRECATED
+		# FIXME: these break libnotify's headers
+		# G_DISABLE_SINGLE_INCLUDES
+		# GTK_DISABLE_SINGLE_INCLUDES
+		GDKMM_DISABLE_DEPRECATED
+		GIOMM_DISABLE_DEPRECATED
+		GLIBMM_DISABLE_DEPRECATED
+		GTKMM_DISABLE_DEPRECATED
+		PANGOMM_DISABLE_DEPRECATED
+		SIGCXX_DISABLE_DEPRECATED)
+endif()
+
 target_compile_options(${TR_NAME}-gtk
     PRIVATE
         $<$<BOOL:${ENABLE_WERROR}>:$<IF:$<CXX_COMPILER_ID:MSVC>,/WX,-Werror>>
openSUSE Build Service is sponsored by