Bug#1066479: opendnssec: FTBFS: ../../common/scheduler/task.c:137:25: error: implicit declaration of function ‘clamp’ [-Werror=implicit-function-declaration]

2024-04-15 Thread Mathieu Mirmont
On Tue, Mar 26, 2024 at 02:36:06PM +0100, Cyril Brulebois wrote:
> Control: tag -1 patch pending
> 
> Lucas Nussbaum  (2024-03-13):
> > This is most likely caused by a change in dpkg 1.22.6, that enabled
> > -Werror=implicit-function-declaration. For more information, see
> > https://wiki.debian.org/qa.debian.org/FTBFS#A2024-03-13_-Werror.3Dimplicit-function-declaration
> > 
> > Relevant part (hopefully):
> > > ../../common/scheduler/task.c: In function ‘task_perform’:
> > > ../../common/scheduler/task.c:137:25: error: implicit declaration of 
> > > function ‘clamp’ [-Werror=implicit-function-declaration]
> > >   137 | task->backoff = clamp(task->backoff * 2, 60, 
> > > ODS_SE_MAX_BACKOFF);
> > >   | ^
> > > cc1: some warnings being treated as errors
> > > make[4]: *** [Makefile:601: scheduler/task.o] Error 1
> 
> I thought there would be several things but apparently that's just the
> one. A quick look upstream shows there are more PRs and more fixups
> needed for even newer compilers, but I'm limiting my patch to the bare
> minimum.
> 
> Since that's been open for 10+ days, and since reverse dependencies
> could get kicked out of testing, I'm uploading an NMU right now so that
> I don't forget, but to DELAYED/2 so there's some room to do things
> differently if desired. I'm happy to reschedule/cancel if needed.

Thanks for the NMU.

I had a look at the new warnings and they all seem to be false
positives. I'd rather not introduce unnecessary changes in the
packaged version compared to upstream just to silence them. This
missing header will do.

-- 
Mathieu Mirmont 


signature.asc
Description: Digital signature


Bug#1066479: opendnssec: FTBFS: ../../common/scheduler/task.c:137:25: error: implicit declaration of function ‘clamp’ [-Werror=implicit-function-declaration]

2024-03-26 Thread Cyril Brulebois
Control: tag -1 patch pending

Lucas Nussbaum  (2024-03-13):
> This is most likely caused by a change in dpkg 1.22.6, that enabled
> -Werror=implicit-function-declaration. For more information, see
> https://wiki.debian.org/qa.debian.org/FTBFS#A2024-03-13_-Werror.3Dimplicit-function-declaration
> 
> Relevant part (hopefully):
> > ../../common/scheduler/task.c: In function ‘task_perform’:
> > ../../common/scheduler/task.c:137:25: error: implicit declaration of 
> > function ‘clamp’ [-Werror=implicit-function-declaration]
> >   137 | task->backoff = clamp(task->backoff * 2, 60, 
> > ODS_SE_MAX_BACKOFF);
> >   | ^
> > cc1: some warnings being treated as errors
> > make[4]: *** [Makefile:601: scheduler/task.o] Error 1

I thought there would be several things but apparently that's just the
one. A quick look upstream shows there are more PRs and more fixups
needed for even newer compilers, but I'm limiting my patch to the bare
minimum.

Since that's been open for 10+ days, and since reverse dependencies
could get kicked out of testing, I'm uploading an NMU right now so that
I don't forget, but to DELAYED/2 so there's some room to do things
differently if desired. I'm happy to reschedule/cancel if needed.


Cheers,
-- 
Cyril Brulebois -- Debian Consultant @ DEBAMAX -- https://debamax.com/
diff -Nru opendnssec-2.1.13/debian/changelog opendnssec-2.1.13/debian/changelog
--- opendnssec-2.1.13/debian/changelog	2023-09-22 17:22:55.0 +0200
+++ opendnssec-2.1.13/debian/changelog	2024-03-26 14:27:44.0 +0100
@@ -1,3 +1,11 @@
+opendnssec (1:2.1.13-1.1) unstable; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix FTBFS due to missing utilities.h include for the clamp declaration
+(Closes: #1066479): 0018-fix-missing-include.patch
+
+ -- Cyril Brulebois   Tue, 26 Mar 2024 14:27:44 +0100
+
 opendnssec (1:2.1.13-1) unstable; urgency=medium
 
   * New upstream version 2.1.13
diff -Nru opendnssec-2.1.13/debian/patches/0018-fix-missing-include.patch opendnssec-2.1.13/debian/patches/0018-fix-missing-include.patch
--- opendnssec-2.1.13/debian/patches/0018-fix-missing-include.patch	1970-01-01 01:00:00.0 +0100
+++ opendnssec-2.1.13/debian/patches/0018-fix-missing-include.patch	2024-03-26 14:23:18.0 +0100
@@ -0,0 +1,10 @@
+--- a/common/scheduler/task.c
 b/common/scheduler/task.c
+@@ -41,6 +41,7 @@
+ #include "file.h"
+ #include "util.h"
+ #include "log.h"
++#include "utilities.h"
+ 
+ static const char* task_str = "task";
+ static pthread_mutex_t worklock = PTHREAD_MUTEX_INITIALIZER;
diff -Nru opendnssec-2.1.13/debian/patches/series opendnssec-2.1.13/debian/patches/series
--- opendnssec-2.1.13/debian/patches/series	2023-09-22 17:22:55.0 +0200
+++ opendnssec-2.1.13/debian/patches/series	2024-03-26 14:27:32.0 +0100
@@ -8,3 +8,4 @@
 0015-remove-strptime-build-warning.patch
 0016-m4-acx_libxml2.m4-use-pkg-config-instead-of-xml2-con.patch
 0017-mysql8_my_bool.patch
+0018-fix-missing-include.patch


signature.asc
Description: PGP signature


Bug#1066479: opendnssec: FTBFS: ../../common/scheduler/task.c:137:25: error: implicit declaration of function ‘clamp’ [-Werror=implicit-function-declaration]

2024-03-13 Thread Lucas Nussbaum
Source: opendnssec
Version: 1:2.1.13-1
Severity: serious
Justification: FTBFS
Tags: trixie sid ftbfs
User: lu...@debian.org
Usertags: ftbfs-20240313 ftbfs-trixie ftbfs-impfuncdef

Hi,

During a rebuild of all packages in sid, your package failed to build
on amd64.

This is most likely caused by a change in dpkg 1.22.6, that enabled
-Werror=implicit-function-declaration. For more information, see
https://wiki.debian.org/qa.debian.org/FTBFS#A2024-03-13_-Werror.3Dimplicit-function-declaration

Relevant part (hopefully):
> gcc -DHAVE_CONFIG_H -I. -I../../common  -I/usr/include -Wdate-time 
> -D_FORTIFY_SOURCE=2  -g -O2 -Werror=implicit-function-declaration 
> -ffile-prefix-map=/<>=. -fstack-protector-strong 
> -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection 
> -Wall -pedantic -DSQLITE3_SONAME=\"libsqlite3.so.0\" -pedantic -rdynamic -c 
> -o scheduler/worker.o ../../common/scheduler/worker.c
> ../../common/cmdhandler.c: In function ‘cmdhandler_accept_client’:
> ../../common/cmdhandler.c:386:9: warning: unused variable ‘err’ 
> [-Wunused-variable]
>   386 | int err;
>   | ^~~
> ../../common/cmdhandler.c: In function ‘cmdhandler_start’:
> ../../common/cmdhandler.c:509:13: warning: unused variable ‘i’ 
> [-Wunused-variable]
>   509 | ssize_t i;
>   | ^
> ../../common/cmdhandler.c: In function ‘self_pipe_trick’:
> ../../common/cmdhandler.c:596:35: warning: zero-length gnu_printf format 
> string [-Wformat-zero-length]
>   596 | client_printf(sockfd, "");
>   |   ^~
> ../../common/cmdhandler.c: In function ‘cmdhandler_perform_command’:
> ../../common/cmdhandler.c:173:13: warning: ignoring return value of 
> ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
>   173 | asprintf(&statusstr, "unknown generic arguments");
>   | ^
> ../../common/cmdhandler.c:202:17: warning: ignoring return value of 
> ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
>   202 | asprintf(&statusstr, "memory error");
>   | ^~~~
> ../../common/cmdhandler.c:209:21: warning: ignoring return value of 
> ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
>   209 | asprintf(&statusstr, "Error parsing arguments %s 
> command line %s", command->name, arg);
>   | 
> ^~
> ../../common/cmdhandler.c:232:25: warning: ignoring return value of 
> ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
>   232 | asprintf(&statusstr, "no help for command  
> %s.", arg);
>   | 
> ^
> ../../common/cmdhandler.c:246:13: warning: ignoring return value of 
> ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
>   246 | asprintf(&statusstr, "Unknown command %s.", arg);
>   | ^~~~
> ../../common/scheduler/schedule.c: In function ‘schedule_get_first_task’:
> ../../common/scheduler/schedule.c:81:20: warning: unused variable ‘node’ 
> [-Wunused-variable]
>81 | ldns_rbnode_t* node = LDNS_RBTREE_NULL;
>   |^~~~
> ../../common/scheduler/task.c: In function ‘task_perform’:
> ../../common/scheduler/task.c:137:25: error: implicit declaration of function 
> ‘clamp’ [-Werror=implicit-function-declaration]
>   137 | task->backoff = clamp(task->backoff * 2, 60, 
> ODS_SE_MAX_BACKOFF);
>   | ^
> cc1: some warnings being treated as errors
> make[4]: *** [Makefile:601: scheduler/task.o] Error 1


The full build log is available from:
http://qa-logs.debian.net/2024/03/13/opendnssec_2.1.13-1_unstable.log

All bugs filed during this archive rebuild are listed at:
https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=ftbfs-20240313;users=lu...@debian.org
or:
https://udd.debian.org/bugs/?release=na&merged=ign&fnewerval=7&flastmodval=7&fusertag=only&fusertagtag=ftbfs-20240313&fusertaguser=lu...@debian.org&allbugs=1&cseverity=1&ctags=1&caffected=1#results

A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!

If you reassign this bug to another package, please mark it as 'affects'-ing
this package. See https://www.debian.org/Bugs/server-control#affects

If you fail to reproduce this, please provide a build log and diff it with mine
so that we can identify if something relevant changed in the meantime.