Bug#964594: psensor FTBFS with libmicrohttpd 0.9.71

2020-07-31 Thread Gianfranco Costamagna
control: tags -1 patch pending

NMU ongoing

G.

On Thu, 09 Jul 2020 13:03:10 +0300 Adrian Bunk  wrote:
> Source: psensor
> Version: 1.1.5-1.1
> Severity: serious
> Tags: ftbfs
> 
> https://tests.reproducible-builds.org/debian/rb-pkg/unstable/amd64/psensor.html
> 
> ...
> server.c: In function 'main':
> server.c:430:21: error: passing argument 5 of 'MHD_start_daemon' from 
> incompatible pointer type [-Werror=incompatible-pointer-types]
>   430 | NULL, NULL, _http_request, server_data.sensors,
>   | ^
>   | |
>   | int (*)(void *, struct MHD_Connection *, const 
> char *, const char *, const char *, const char *, size_t *, void **) {aka int 
> (*)(void *, struct MHD_Connection *, const char *, const char *, const char 
> *, const char *, long unsigned int *, void **)}
> In file included from server.c:39:
> /usr/include/microhttpd.h:2425:1: note: expected 'MHD_AccessHandlerCallback' 
> {aka 'enum MHD_Result (*)(void *, struct MHD_Connection *, const char *, 
> const char *, const char *, const char *, long unsigned int *, void **)'} but 
> argument is of type 'int (*)(void *, struct MHD_Connection *, const char *, 
> const char *, const char *, const char *, size_t *, void **)' {aka 'int 
> (*)(void *, struct MHD_Connection *, const char *, const char *, const char 
> *, const char *, long unsigned int *, void **)'}
>  2425 | MHD_start_daemon (unsigned int flags,
>   | ^~~~
> cc1: all warnings being treated as errors
> make[4]: *** [Makefile:471: server.o] Error 1
> 
> 
diff -Nru psensor-1.1.5/debian/changelog psensor-1.1.5/debian/changelog
--- psensor-1.1.5/debian/changelog  2019-08-12 15:41:22.0 +0200
+++ psensor-1.1.5/debian/changelog  2020-07-31 12:00:39.0 +0200
@@ -1,3 +1,11 @@
+psensor (1.1.5-1.2) unstable; urgency=medium
+
+  * Non-maintainer upload.
+  * debian/patches/14.patch:
+- adapt to new mhd 0.9.71 with upstream (rebased) patch (Closes: #964594)
+
+ -- Gianfranco Costamagna   Fri, 31 Jul 2020 
12:00:39 +0200
+
 psensor (1.1.5-1.1) unstable; urgency=medium
 
   * Non-maintainer upload.
diff -Nru psensor-1.1.5/debian/patches/14.patch 
psensor-1.1.5/debian/patches/14.patch
--- psensor-1.1.5/debian/patches/14.patch   1970-01-01 01:00:00.0 
+0100
+++ psensor-1.1.5/debian/patches/14.patch   2020-07-31 11:56:50.0 
+0200
@@ -0,0 +1,34 @@
+From 3e8dfe6f2a4317c4cab3d5afec42abdefa3cc2df Mon Sep 17 00:00:00 2001
+From: Jean-Philippe Orsini 
+Date: Fri, 17 Jul 2020 00:10:54 +0200
+Subject: [PATCH 1/7] fix compilation with microhttpd since version 0.9.71
+ which changes the return type of the cbk
+
+--- psensor-1.1.5.orig/src/server/server.c
 psensor-1.1.5/src/server/server.c
+@@ -281,13 +281,18 @@ create_response(const char *nurl, const
+  MHD_RESPMEM_MUST_FREE);
+ }
+ 
+-static int cbk_http_request(void *cls,
+-  struct MHD_Connection *connection,
+-  const char *url,
+-  const char *method,
+-  const char *version,
+-  const char *upload_data,
+-  size_t *upload_data_size, void **ptr)
++#if MHD_VERSION < 0x00097002
++static int
++#else
++static enum MHD_Result
++#endif
++cbk_http_request(void *cls,
++   struct MHD_Connection *connection,
++   const char *url,
++   const char *method,
++   const char *version,
++   const char *upload_data,
++   size_t *upload_data_size, void **ptr)
+ {
+   static int dummy;
+   struct MHD_Response *response;
diff -Nru psensor-1.1.5/debian/patches/series 
psensor-1.1.5/debian/patches/series
--- psensor-1.1.5/debian/patches/series 2019-06-30 10:33:04.0 +0200
+++ psensor-1.1.5/debian/patches/series 2020-07-31 11:57:13.0 +0200
@@ -1 +1,2 @@
 0001-Update-rsensor.c-drop-is_error-macro-definition.patch
+14.patch


Bug#964594: psensor FTBFS with libmicrohttpd 0.9.71

2020-07-09 Thread Adrian Bunk
Source: psensor
Version: 1.1.5-1.1
Severity: serious
Tags: ftbfs

https://tests.reproducible-builds.org/debian/rb-pkg/unstable/amd64/psensor.html

...
server.c: In function 'main':
server.c:430:21: error: passing argument 5 of 'MHD_start_daemon' from 
incompatible pointer type [-Werror=incompatible-pointer-types]
  430 | NULL, NULL, _http_request, server_data.sensors,
  | ^
  | |
  | int (*)(void *, struct MHD_Connection *, const char 
*, const char *, const char *, const char *, size_t *, void **) {aka int 
(*)(void *, struct MHD_Connection *, const char *, const char *, const char *, 
const char *, long unsigned int *, void **)}
In file included from server.c:39:
/usr/include/microhttpd.h:2425:1: note: expected 'MHD_AccessHandlerCallback' 
{aka 'enum MHD_Result (*)(void *, struct MHD_Connection *, const char *, const 
char *, const char *, const char *, long unsigned int *, void **)'} but 
argument is of type 'int (*)(void *, struct MHD_Connection *, const char *, 
const char *, const char *, const char *, size_t *, void **)' {aka 'int 
(*)(void *, struct MHD_Connection *, const char *, const char *, const char *, 
const char *, long unsigned int *, void **)'}
 2425 | MHD_start_daemon (unsigned int flags,
  | ^~~~
cc1: all warnings being treated as errors
make[4]: *** [Makefile:471: server.o] Error 1