I added some more gcc-14 fixes, and used part of an upstream PR (9367)

diff -Nru monero-0.18.3.1+~0+20200826/debian/changelog 
monero-0.18.3.1+~0+20200826/debian/changelog
--- monero-0.18.3.1+~0+20200826/debian/changelog        2023-10-08 
22:09:43.000000000 +0200
+++ monero-0.18.3.1+~0+20200826/debian/changelog        2024-07-26 
18:48:19.000000000 +0200
@@ -1,3 +1,12 @@
+monero (0.18.3.1+~0+20200826-1.1) unstable; urgency=medium
+
+  * Non-maintainer upload
+  * Fix FTBFS with miniupnpc-2.2.8-2 (Closes: #1076690)
+    - use upstream proposed PR 9367
+  * Add some c++-14 related fixes
+
+ -- Gianfranco Costamagna <locutusofb...@debian.org>  Fri, 26 Jul 2024 
18:48:19 +0200
+
 monero (0.18.3.1+~0+20200826-1) unstable; urgency=medium
* Team upload
diff -Nru monero-0.18.3.1+~0+20200826/debian/patches/9367.patch 
monero-0.18.3.1+~0+20200826/debian/patches/9367.patch
--- monero-0.18.3.1+~0+20200826/debian/patches/9367.patch       1970-01-01 
01:00:00.000000000 +0100
+++ monero-0.18.3.1+~0+20200826/debian/patches/9367.patch       2024-07-26 
18:48:19.000000000 +0200
@@ -0,0 +1,157 @@
+From 5074a543a49f7e23fb39b6462fd4c4c9741c3693 Mon Sep 17 00:00:00 2001
+From: 0xFFFC0000 <0xfffc0...@proton.me>
+Date: Wed, 12 Jun 2024 21:29:23 +0000
+Subject: [PATCH 1/3] cmake: remove extera cmake/FindMiniupnpc.cmake and only
+ rely on external/miniupnpc.
+
+---
+ cmake/FindMiniupnpc.cmake | 59 ---------------------------------------
+ external/CMakeLists.txt   |  2 --
+ 2 files changed, 61 deletions(-)
+ delete mode 100644 cmake/FindMiniupnpc.cmake
+
+Index: monero-0.18.3.1+~0+20200826/external/CMakeLists.txt
+===================================================================
+--- monero-0.18.3.1+~0+20200826.orig/external/CMakeLists.txt
++++ monero-0.18.3.1+~0+20200826/external/CMakeLists.txt
+@@ -36,7 +36,11 @@
+ # others.
+
+ find_package(Miniupnpc REQUIRED)
++if(NOT MSVC)
++  add_compile_options(-D_GNU_SOURCE)
++endif()
+
++set(UPNPC_BUILD_TESTS FALSE CACHE BOOL "Disable miniupnp internal tests." 
FORCE)
+ set(UPNP_STATIC false PARENT_SCOPE)
+ #set(UPNP_INCLUDE ${MINIUPNP_INCLUDE_DIR} PARENT_SCOPE)
+ set(UPNP_LIBRARIES ${MINIUPNP_LIBRARY} PARENT_SCOPE)
+Index: monero-0.18.3.1+~0+20200826/CMakeLists.txt
+===================================================================
+--- monero-0.18.3.1+~0+20200826.orig/CMakeLists.txt
++++ monero-0.18.3.1+~0+20200826/CMakeLists.txt
+@@ -645,7 +645,7 @@
+ endfunction()
+
+ function (monero_add_library_with_deps)
+-  cmake_parse_arguments(MONERO_ADD_LIBRARY "" "NAME" "DEPENDS;SOURCES" 
${ARGN})
++  cmake_parse_arguments(MONERO_ADD_LIBRARY "" "NAME" 
"DEPENDS;LINKS;PRIVATE_LINKS;INCLUDES;PRIVATE_INCLUDES;SOURCES" ${ARGN})
+   source_group("${MONERO_ADD_LIBRARY_NAME}" FILES 
${MONERO_ADD_LIBRARY_SOURCES})
+
+   # Define a ("virtual") object library and an actual library that links those
+@@ -660,6 +660,22 @@
+   if (MONERO_ADD_LIBRARY_DEPENDS)
+     add_dependencies(${objlib} ${MONERO_ADD_LIBRARY_DEPENDS})
+   endif()
++  if (MONERO_ADD_LIBRARY_LINKS)
++    target_link_libraries(${objlib} PUBLIC ${MONERO_ADD_LIBRARY_LINKS})
++    target_link_libraries(${MONERO_ADD_LIBRARY_NAME} PUBLIC 
${MONERO_ADD_LIBRARY_LINKS})
++  endif()
++  if (MONERO_ADD_LIBRARY_PRIVATE_LINKS)
++    target_link_libraries(${objlib} PRIVATE 
${MONERO_ADD_LIBRARY_PRIVATE_LINKS})
++    target_link_libraries(${MONERO_ADD_LIBRARY_NAME} PRIVATE 
${MONERO_ADD_LIBRARY_PRIVATE_LINKS})
++  endif()
++  if (MONERO_ADD_LIBRARY_INCLUDES)
++    target_include_directories(${objlib} PUBLIC 
${MONERO_ADD_LIBRARY_INCLUDES})
++    target_include_directories(${MONERO_ADD_LIBRARY_NAME} PUBLIC 
${MONERO_ADD_LIBRARY_INCLUDES})
++  endif()
++  if (MONERO_ADD_LIBRARY_PRIVATE_INCLUDES)
++    target_include_directories(${objlib} PRIVATE 
${MONERO_ADD_LIBRARY_PRIVATE_INCLUDES})
++    target_include_directories(${MONERO_ADD_LIBRARY_NAME} PRIVATE 
${MONERO_ADD_LIBRARY_PRIVATE_INCLUDES})
++  endif()
+   set_property(TARGET "${MONERO_ADD_LIBRARY_NAME}" PROPERTY FOLDER "libs")
+   target_compile_definitions(${objlib}
+     PRIVATE 
$<TARGET_PROPERTY:${MONERO_ADD_LIBRARY_NAME},INTERFACE_COMPILE_DEFINITIONS>)
+Index: monero-0.18.3.1+~0+20200826/src/p2p/net_node.inl
+===================================================================
+--- monero-0.18.3.1+~0+20200826.orig/src/p2p/net_node.inl
++++ monero-0.18.3.1+~0+20200826/src/p2p/net_node.inl
+@@ -2989,7 +2989,8 @@
+     UPNPUrls urls;
+     IGDdatas igdData;
+     char lanAddress[64];
+-    result = UPNP_GetValidIGD(deviceList, &urls, &igdData, lanAddress, sizeof 
lanAddress);
++      char wanaddr[64];       /* up address of the IGD on the WAN */
++    result = UPNP_GetValidIGD(deviceList, &urls, &igdData, lanAddress, sizeof 
lanAddress, wanaddr, sizeof wanaddr);
+     freeUPNPDevlist(deviceList);
+     if (result > 0) {
+       if (result == 1) {
+@@ -3057,7 +3058,8 @@
+     UPNPUrls urls;
+     IGDdatas igdData;
+     char lanAddress[64];
+-    result = UPNP_GetValidIGD(deviceList, &urls, &igdData, lanAddress, sizeof 
lanAddress);
++      char wanaddr[64];       /* up address of the IGD on the WAN */
++    result = UPNP_GetValidIGD(deviceList, &urls, &igdData, lanAddress, sizeof 
lanAddress, wanaddr, sizeof wanaddr);
+     freeUPNPDevlist(deviceList);
+     if (result > 0) {
+       if (result == 1) {
+Index: monero-0.18.3.1+~0+20200826/src/rpc/CMakeLists.txt
+===================================================================
+--- monero-0.18.3.1+~0+20200826.orig/src/rpc/CMakeLists.txt
++++ monero-0.18.3.1+~0+20200826/src/rpc/CMakeLists.txt
+@@ -96,12 +96,31 @@
+ monero_add_library(rpc_base
+   ${rpc_base_sources}
+   ${rpc_base_headers}
+-  ${rpc_base_private_headers})
++  ${rpc_base_private_headers}
++  LINKS
++    common
++    epee
++    ${Boost_REGEX_LIBRARY}
++    ${Boost_THREAD_LIBRARY}
++    ${Boost_PROGRAM_OPTIONS_LIBRARY}
++  PRIVATE_LINKS
++    ${EXTRA_LIBRARIES})
+
+ monero_add_library(rpc
+   ${rpc_sources}
+   ${rpc_headers}
+-  ${rpc_private_headers})
++  ${rpc_private_headers}
++  LINKS
++    rpc_base
++    common
++    cryptonote_core
++    cryptonote_protocol
++    net
++    version
++    ${Boost_REGEX_LIBRARY}
++    ${Boost_THREAD_LIBRARY}
++  PRIVATE_LINKS
++    ${EXTRA_LIBRARIES})
+
+ monero_add_library(rpc_pub
+   ${rpc_pub_sources}
+@@ -118,30 +137,6 @@
+   ${daemon_rpc_server_headers}
+   ${daemon_rpc_server_private_headers})
+
+-
+-target_link_libraries(rpc_base
+-  PUBLIC
+-    common
+-    epee
+-    ${Boost_REGEX_LIBRARY}
+-    ${Boost_THREAD_LIBRARY}
+-    ${Boost_PROGRAM_OPTIONS_LIBRARY}
+-  PRIVATE
+-    ${EXTRA_LIBRARIES})
+-
+-target_link_libraries(rpc
+-  PUBLIC
+-    rpc_base
+-    common
+-    cryptonote_core
+-    cryptonote_protocol
+-    net
+-    version
+-    ${Boost_REGEX_LIBRARY}
+-    ${Boost_THREAD_LIBRARY}
+-  PRIVATE
+-    ${EXTRA_LIBRARIES})
+-
+ target_link_libraries(rpc_pub
+   PUBLIC
+     epee
diff -Nru monero-0.18.3.1+~0+20200826/debian/patches/fix-build.patch 
monero-0.18.3.1+~0+20200826/debian/patches/fix-build.patch
--- monero-0.18.3.1+~0+20200826/debian/patches/fix-build.patch  1970-01-01 
01:00:00.000000000 +0100
+++ monero-0.18.3.1+~0+20200826/debian/patches/fix-build.patch  2024-07-26 
18:48:19.000000000 +0200
@@ -0,0 +1,21 @@
+Description:
+   * Add some c++-14 related fixes
+/<<PKGBUILDDIR>>/tests/unit_tests/memwipe.cpp:49:29: error: ‘setw’ is not a 
member of ‘std’
+   49 |     MDEBUG(std::hex << std::setw(8) << std::setfill('0') << 
*(uint32_t*)quux);
+
+Author: Gianfranco Costamagna <locutusofb...@debian.org>
+Bug-Debian: https://bugs.debian.org/1076690
+Last-Update: 2024-07-29
+
+Index: monero-0.18.3.1+~0+20200826/tests/unit_tests/memwipe.cpp
+===================================================================
+--- monero-0.18.3.1+~0+20200826.orig/tests/unit_tests/memwipe.cpp
++++ monero-0.18.3.1+~0+20200826/tests/unit_tests/memwipe.cpp
+@@ -28,6 +28,7 @@
+
+ #include "gtest/gtest.h"
+
++#include <iomanip>
+ #include <stdint.h>
+ #include "misc_log_ex.h"
+ #include "memwipe.h"
diff -Nru monero-0.18.3.1+~0+20200826/debian/patches/series 
monero-0.18.3.1+~0+20200826/debian/patches/series
--- monero-0.18.3.1+~0+20200826/debian/patches/series   2023-10-08 
22:05:31.000000000 +0200
+++ monero-0.18.3.1+~0+20200826/debian/patches/series   2024-07-26 
18:48:19.000000000 +0200
@@ -1,2 +1,4 @@
 2001_system_shared_libs.patch
 2002_privacy.patch
+9367.patch
+fix-build.patch

Reply via email to