How about https://bugzilla.redhat.com/enter_bug.cgi?product=Fedora&version=rawhide&component=ltrace On Sat, Jun 18, 2016 at 12:31 AM, DJ Delorie <dj@xxxxxxxxxx> wrote: > > Not sure where to send this, but... > > From 1280b78688baaf9a576af5a0a0a658fd0f0ea7e4 Mon Sep 17 00:00:00 2001 > From: DJ Delorie <dj@xxxxxxxxxxxxxxxxxxx> > Date: Fri, 17 Jun 2016 19:27:55 -0400 > Subject: Fix FTBFS due to gcc and glibc updates > > - comment out tautological asserts that gcc 6 complains about > - replace readdir_r (deprecated) with readdir > - remove bogus chunk in ltrace-0.7.91-unwind-elfutils.patch > > diff --git a/ltrace-0.7.91-tautology.patch b/ltrace-0.7.91-tautology.patch > new file mode 100644 > index 0000000..24ff020 > --- /dev/null > +++ b/ltrace-0.7.91-tautology.patch > @@ -0,0 +1,96 @@ > +diff -r -U3 -p ltrace-0.7.91.orig/filter.c ltrace-0.7.91.dj/filter.c > +--- ltrace-0.7.91.orig/filter.c 2012-12-16 20:53:44.000000000 -0500 > ++++ ltrace-0.7.91.dj/filter.c 2016-06-17 19:07:23.678490985 -0400 > +@@ -79,7 +79,7 @@ filter_lib_matcher_name_init(struct filt > + { > + switch (type) { > + case FLM_MAIN: > +- assert(type != type); > ++ //assert(type != type); > + abort(); > + > + case FLM_SONAME: > +@@ -137,7 +137,7 @@ matcher_matches_library(struct filter_li > + case FLM_MAIN: > + return lib->type == LT_LIBTYPE_MAIN; > + } > +- assert(matcher->type != matcher->type); > ++ //assert(matcher->type != matcher->type); > + abort(); > + } > + > +Only in ltrace-0.7.91.dj/: filter.c~ > +diff -r -U3 -p ltrace-0.7.91.orig/sysdeps/linux-gnu/proc.c ltrace-0.7.91.dj/sysdeps/linux-gnu/proc.c > +--- ltrace-0.7.91.orig/sysdeps/linux-gnu/proc.c 2013-10-11 15:27:11.000000000 -0400 > ++++ ltrace-0.7.91.dj/sysdeps/linux-gnu/proc.c 2016-06-17 18:59:42.333774042 -0400 > +@@ -242,9 +242,10 @@ process_tasks(pid_t pid, pid_t **ret_tas > + size_t alloc = 0; > + > + while (1) { > +- struct dirent entry; > + struct dirent *result; > +- if (readdir_r(d, &entry, &result) != 0) { > ++ errno = 0; > ++ result = readdir(d); > ++ if (result == NULL && errno != 0) { > + fail: > + free(tasks); > + closedir(d); > +Only in ltrace-0.7.91.dj/sysdeps/linux-gnu: proc.c~ > +diff -r -U3 -p ltrace-0.7.91.orig/sysdeps/linux-gnu/x86/fetch.c ltrace-0.7.91.dj/sysdeps/linux-gnu/x86/fetch.c > +--- ltrace-0.7.91.orig/sysdeps/linux-gnu/x86/fetch.c 2013-10-24 08:33:35.000000000 -0400 > ++++ ltrace-0.7.91.dj/sysdeps/linux-gnu/x86/fetch.c 2016-06-17 18:52:33.962842191 -0400 > +@@ -523,7 +523,7 @@ classify(struct process *proc, struct fe > + > + default: > + /* Unsupported type. */ > +- assert(info->type != info->type); > ++ //assert(info->type != info->type); > + abort(); > + } > + abort(); > +Only in ltrace-0.7.91.dj/sysdeps/linux-gnu/x86: fetch.c~ > +diff -r -U3 -p ltrace-0.7.91.orig/sysdeps/linux-gnu/x86/trace.c ltrace-0.7.91.dj/sysdeps/linux-gnu/x86/trace.c > +--- ltrace-0.7.91.orig/sysdeps/linux-gnu/x86/trace.c 2012-12-16 20:53:45.000000000 -0500 > ++++ ltrace-0.7.91.dj/sysdeps/linux-gnu/x86/trace.c 2016-06-17 18:52:16.699844065 -0400 > +@@ -145,7 +145,7 @@ arch_type_sizeof(struct process *proc, s > + return (size_t)-2; > + > + default: > +- assert(info->type != info->type); > ++ //assert(info->type != info->type); > + abort(); > + } > + } > +@@ -158,7 +158,7 @@ arch_type_alignof(struct process *proc, > + > + switch (info->type) { > + default: > +- assert(info->type != info->type); > ++ //assert(info->type != info->type); > + abort(); > + break; > + > +Only in ltrace-0.7.91.dj/sysdeps/linux-gnu/x86: trace.c~ > +diff -r -U3 -p ltrace-0.7.91.orig/value.c ltrace-0.7.91.dj/value.c > +--- ltrace-0.7.91.orig/value.c 2013-10-10 08:43:55.000000000 -0400 > ++++ ltrace-0.7.91.dj/value.c 2016-06-17 19:11:43.441047589 -0400 > +@@ -363,7 +363,7 @@ value_set_word(struct value *value, long > + u.u64 = word; > + break; > + default: > +- assert(sz != sz); > ++ //assert(sz != sz); > + abort(); > + } > + > +@@ -414,7 +414,7 @@ value_extract_word(struct value *value, > + *retp = (long)u.u64; > + return 0; > + default: > +- assert(sz != sz); > ++ //assert(sz != sz); > + abort(); > + } > + } > +Only in ltrace-0.7.91.dj/: value.c~ > diff --git a/ltrace-0.7.91-unwind-elfutils.patch b/ltrace-0.7.91-unwind-elfutils.patch > index 6a855a8..3b46a76 100644 > --- a/ltrace-0.7.91-unwind-elfutils.patch > +++ b/ltrace-0.7.91-unwind-elfutils.patch > @@ -379,24 +379,6 @@ diff -u ltrace-0.7.91/proc.c ltrace-0.7.91-pm/proc.c > struct library_symbol *libsym = NULL; > while ((libsym = library_each_symbol(lib, libsym, > diff -u ltrace-0.7.91/proc.c.orig ltrace-0.7.91-pm/proc.c.orig > ---- ltrace-0.7.91/proc.c.orig 2013-10-23 01:01:15.000000000 +0200 > -+++ ltrace-0.7.91-pm/proc.c.orig 2015-01-09 00:37:24.120218624 +0100 > -@@ -220,9 +220,11 @@ > - goto fail; > - } > - > -- if (proc->leader != proc) > -- return 0; > -- if (process_init_main(proc) < 0) { > -+ if (proc->leader != proc) { > -+ proc->e_machine = proc->leader->e_machine; > -+ proc->e_class = proc->leader->e_class; > -+ get_arch_dep(proc); > -+ } else if (process_init_main(proc) < 0) { > - process_bare_destroy(proc, 0); > - goto fail; > - } > -diff -u ltrace-0.7.91/proc.h ltrace-0.7.91-pm/proc.h > --- ltrace-0.7.91/proc.h 2015-01-09 00:38:17.966190936 +0100 > +++ ltrace-0.7.91-pm/proc.h 2015-01-09 00:37:40.261910548 +0100 > @@ -28,6 +28,10 @@ > diff --git a/ltrace.spec b/ltrace.spec > index 7b9826e..4f25ee8 100644 > --- a/ltrace.spec > +++ b/ltrace.spec > @@ -1,7 +1,7 @@ > Summary: Tracks runtime library calls from dynamically linked executables > Name: ltrace > Version: 0.7.91 > -Release: 19%{?dist} > +Release: 20%{?dist} > URL: http://ltrace.alioth.debian.org/ > License: GPLv2+ > Group: Development/Debuggers > @@ -97,6 +97,9 @@ Patch24: ltrace-0.7.91-ppc64le-configure.patch > > Patch25: ltrace-rh1307754.patch > > +# GCC now warns (errors) on "tautological compares", and readdir_r is deprecated. > +Patch26: ltrace-0.7.91-tautology.patch > + > %description > Ltrace is a debugging program which runs a specified command until the > command exits. While the command is executing, ltrace intercepts and > @@ -134,6 +137,7 @@ execution of processes. > %patch23 -p1 > %patch24 -p1 > %patch25 -p1 > +%patch26 -p1 > > %build > autoreconf -i > @@ -159,6 +163,9 @@ echo ====================TESTING END===================== > %{_datadir}/ltrace > > %changelog > +* Fri Jun 17 2016 DJ Delorie <dj@xxxxxxxxxx> - 0.7.91-20 > +- Fix FTBFS due to new gcc 6 warnings, deprecated readdir_r, and bogus chunk in unwind-elf patch. > + > * Thu Feb 19 2016 Jeff Law <law@xxxxxxxxxxxxxx> - 0.7.91-19 > - Fix FTBFS due to testsuite failure (#1307754) . Add missing files to %doc > > -- > devel mailing list > devel@xxxxxxxxxxxxxxxxxxxxxxx > https://lists.fedoraproject.org/admin/lists/devel@xxxxxxxxxxxxxxxxxxxxxxx -- devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxxx https://lists.fedoraproject.org/admin/lists/devel@xxxxxxxxxxxxxxxxxxxxxxx