[Ubuntu-ha] [Bug 1869751] Re: [focal] pacemaker FTBFS because of deprecated ftime()
Thanks @doko, This was fixed by: # ftime causes deprecation errors now, but the clock_gettime replacement is # disabled by default in 2.0.3. Enable it. CPPFLAGS = -UPCMK_TIME_EMERGENCY_CGT in pacemaker (2.0.3-3ubuntu2) focal; urgency=medium * Forcibly switch from ftime to clock_gettime, since building with ftime now results in deprecation errors -- William Grant Sat, 04 Apr 2020 19:15:34 +1100 I'll rebase my merge request. ** Merge proposal unlinked: https://code.launchpad.net/~rafaeldtinoco/ubuntu/+source/pacemaker/+git/pacemaker/+merge/381684 ** Changed in: pacemaker (Ubuntu) Assignee: Rafael David Tinoco (rafaeldtinoco) => (unassigned) -- You received this bug notification because you are a member of Ubuntu High Availability Team, which is subscribed to pacemaker in Ubuntu. https://bugs.launchpad.net/bugs/1869751 Title: [focal] pacemaker FTBFS because of deprecated ftime() Status in pacemaker package in Ubuntu: Fix Committed Bug description: https://people.canonical.com/~doko/ftbfs-report/test-rebuild-20200327 -focal-focal.html shows that pacemaker started to be FTBFS because of: """ gcc -DHAVE_CONFIG_H -I. -I../../include -DSUPPORT_REMOTE -I../../include -I../../include -I../../libltdl -I../../libltdl -DPCMK_TIME_EMERGENCY_CGT -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/include/glib-2.0 -I/usr/lib/i386-linux-gnu/glib-2.0/include -I/usr/include/libxml2 -I/usr/include/heartbeat -I/usr/include/dbus-1.0 -I/usr/lib/i386-linux-gnu/dbus-1.0/include -fPIE -g -O2 -fdebug-prefix-map=/<>=. -fstack-protector-strong -Wformat -Werror=format-security -ggdb -fgnu89-inline -Wall -Waggregate-return -Wbad-function-cast -Wcast-align -Wdeclaration-after-statement -Wendif-labels -Wfloat-equal -Wformat-security -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Wno-long-long -Wno-strict-aliasing -Wpointer-arith -Wwrite-strings -Wunused-but-set-variable -Wformat=2 -Wformat-nonliteral -fstack-protector-strong -Werror -c -o pacemaker_remoted-pacemaker-execd.o `test -f 'pacemaker-execd.c' || echo './'`pacemaker-execd.c execd_commands.c: In function ‘stonith_recurring_op_helper’: execd_commands.c:257:5: error: ‘ftime’ is deprecated [-Werror=deprecated-declarations] 257 | ftime(>t_queue); | ^ In file included from execd_commands.c:23: /usr/include/i386-linux-gnu/sys/timeb.h:39:12: note: declared here 39 | extern int ftime (struct timeb *__timebuf) |^ execd_commands.c: In function ‘schedule_lrmd_cmd’: execd_commands.c:389:5: error: ‘ftime’ is deprecated [-Werror=deprecated-declarations] 389 | ftime(>t_queue); | ^ """ And man page shows: SYNOPSIS #include int ftime(struct timeb *tp); DESCRIPTION NOTE: This function is deprecated, and will be removed in a future version of the GNU C library. Use clock_gettime(2) instead. I'll fix this together with other fixes, opening this bug to track the issue. To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/pacemaker/+bug/1869751/+subscriptions ___ Mailing list: https://launchpad.net/~ubuntu-ha Post to : ubuntu-ha@lists.launchpad.net Unsubscribe : https://launchpad.net/~ubuntu-ha More help : https://help.launchpad.net/ListHelp
[Ubuntu-ha] [Bug 1869751] Re: [focal] pacemaker FTBFS because of deprecated ftime()
pacemaker was uploaded for the riscv64 bootstrap. now builds ** Changed in: pacemaker (Ubuntu) Status: Confirmed => Fix Committed -- You received this bug notification because you are a member of Ubuntu High Availability Team, which is subscribed to pacemaker in Ubuntu. https://bugs.launchpad.net/bugs/1869751 Title: [focal] pacemaker FTBFS because of deprecated ftime() Status in pacemaker package in Ubuntu: Fix Committed Bug description: https://people.canonical.com/~doko/ftbfs-report/test-rebuild-20200327 -focal-focal.html shows that pacemaker started to be FTBFS because of: """ gcc -DHAVE_CONFIG_H -I. -I../../include -DSUPPORT_REMOTE -I../../include -I../../include -I../../libltdl -I../../libltdl -DPCMK_TIME_EMERGENCY_CGT -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/include/glib-2.0 -I/usr/lib/i386-linux-gnu/glib-2.0/include -I/usr/include/libxml2 -I/usr/include/heartbeat -I/usr/include/dbus-1.0 -I/usr/lib/i386-linux-gnu/dbus-1.0/include -fPIE -g -O2 -fdebug-prefix-map=/<>=. -fstack-protector-strong -Wformat -Werror=format-security -ggdb -fgnu89-inline -Wall -Waggregate-return -Wbad-function-cast -Wcast-align -Wdeclaration-after-statement -Wendif-labels -Wfloat-equal -Wformat-security -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Wno-long-long -Wno-strict-aliasing -Wpointer-arith -Wwrite-strings -Wunused-but-set-variable -Wformat=2 -Wformat-nonliteral -fstack-protector-strong -Werror -c -o pacemaker_remoted-pacemaker-execd.o `test -f 'pacemaker-execd.c' || echo './'`pacemaker-execd.c execd_commands.c: In function ‘stonith_recurring_op_helper’: execd_commands.c:257:5: error: ‘ftime’ is deprecated [-Werror=deprecated-declarations] 257 | ftime(>t_queue); | ^ In file included from execd_commands.c:23: /usr/include/i386-linux-gnu/sys/timeb.h:39:12: note: declared here 39 | extern int ftime (struct timeb *__timebuf) |^ execd_commands.c: In function ‘schedule_lrmd_cmd’: execd_commands.c:389:5: error: ‘ftime’ is deprecated [-Werror=deprecated-declarations] 389 | ftime(>t_queue); | ^ """ And man page shows: SYNOPSIS #include int ftime(struct timeb *tp); DESCRIPTION NOTE: This function is deprecated, and will be removed in a future version of the GNU C library. Use clock_gettime(2) instead. I'll fix this together with other fixes, opening this bug to track the issue. To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/pacemaker/+bug/1869751/+subscriptions ___ Mailing list: https://launchpad.net/~ubuntu-ha Post to : ubuntu-ha@lists.launchpad.net Unsubscribe : https://launchpad.net/~ubuntu-ha More help : https://help.launchpad.net/ListHelp
[Ubuntu-ha] [Bug 1869751] Re: [focal] pacemaker FTBFS because of deprecated ftime()
** Merge proposal linked: https://code.launchpad.net/~rafaeldtinoco/ubuntu/+source/pacemaker/+git/pacemaker/+merge/381684 -- You received this bug notification because you are a member of Ubuntu High Availability Team, which is subscribed to pacemaker in Ubuntu. https://bugs.launchpad.net/bugs/1869751 Title: [focal] pacemaker FTBFS because of deprecated ftime() Status in pacemaker package in Ubuntu: Confirmed Bug description: https://people.canonical.com/~doko/ftbfs-report/test-rebuild-20200327 -focal-focal.html shows that pacemaker started to be FTBFS because of: """ gcc -DHAVE_CONFIG_H -I. -I../../include -DSUPPORT_REMOTE -I../../include -I../../include -I../../libltdl -I../../libltdl -DPCMK_TIME_EMERGENCY_CGT -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/include/glib-2.0 -I/usr/lib/i386-linux-gnu/glib-2.0/include -I/usr/include/libxml2 -I/usr/include/heartbeat -I/usr/include/dbus-1.0 -I/usr/lib/i386-linux-gnu/dbus-1.0/include -fPIE -g -O2 -fdebug-prefix-map=/<>=. -fstack-protector-strong -Wformat -Werror=format-security -ggdb -fgnu89-inline -Wall -Waggregate-return -Wbad-function-cast -Wcast-align -Wdeclaration-after-statement -Wendif-labels -Wfloat-equal -Wformat-security -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Wno-long-long -Wno-strict-aliasing -Wpointer-arith -Wwrite-strings -Wunused-but-set-variable -Wformat=2 -Wformat-nonliteral -fstack-protector-strong -Werror -c -o pacemaker_remoted-pacemaker-execd.o `test -f 'pacemaker-execd.c' || echo './'`pacemaker-execd.c execd_commands.c: In function ‘stonith_recurring_op_helper’: execd_commands.c:257:5: error: ‘ftime’ is deprecated [-Werror=deprecated-declarations] 257 | ftime(>t_queue); | ^ In file included from execd_commands.c:23: /usr/include/i386-linux-gnu/sys/timeb.h:39:12: note: declared here 39 | extern int ftime (struct timeb *__timebuf) |^ execd_commands.c: In function ‘schedule_lrmd_cmd’: execd_commands.c:389:5: error: ‘ftime’ is deprecated [-Werror=deprecated-declarations] 389 | ftime(>t_queue); | ^ """ And man page shows: SYNOPSIS #include int ftime(struct timeb *tp); DESCRIPTION NOTE: This function is deprecated, and will be removed in a future version of the GNU C library. Use clock_gettime(2) instead. I'll fix this together with other fixes, opening this bug to track the issue. To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/pacemaker/+bug/1869751/+subscriptions ___ Mailing list: https://launchpad.net/~ubuntu-ha Post to : ubuntu-ha@lists.launchpad.net Unsubscribe : https://launchpad.net/~ubuntu-ha More help : https://help.launchpad.net/ListHelp
[Ubuntu-ha] [Bug 1869751] Re: [focal] pacemaker FTBFS because of deprecated ftime()
Check: https://bugs.launchpad.net/ubuntu/+source/pacemaker/+bug/1870235 for the fix (same merge request). -- You received this bug notification because you are a member of Ubuntu High Availability Team, which is subscribed to pacemaker in Ubuntu. https://bugs.launchpad.net/bugs/1869751 Title: [focal] pacemaker FTBFS because of deprecated ftime() Status in pacemaker package in Ubuntu: Confirmed Bug description: https://people.canonical.com/~doko/ftbfs-report/test-rebuild-20200327 -focal-focal.html shows that pacemaker started to be FTBFS because of: """ gcc -DHAVE_CONFIG_H -I. -I../../include -DSUPPORT_REMOTE -I../../include -I../../include -I../../libltdl -I../../libltdl -DPCMK_TIME_EMERGENCY_CGT -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/include/glib-2.0 -I/usr/lib/i386-linux-gnu/glib-2.0/include -I/usr/include/libxml2 -I/usr/include/heartbeat -I/usr/include/dbus-1.0 -I/usr/lib/i386-linux-gnu/dbus-1.0/include -fPIE -g -O2 -fdebug-prefix-map=/<>=. -fstack-protector-strong -Wformat -Werror=format-security -ggdb -fgnu89-inline -Wall -Waggregate-return -Wbad-function-cast -Wcast-align -Wdeclaration-after-statement -Wendif-labels -Wfloat-equal -Wformat-security -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Wno-long-long -Wno-strict-aliasing -Wpointer-arith -Wwrite-strings -Wunused-but-set-variable -Wformat=2 -Wformat-nonliteral -fstack-protector-strong -Werror -c -o pacemaker_remoted-pacemaker-execd.o `test -f 'pacemaker-execd.c' || echo './'`pacemaker-execd.c execd_commands.c: In function ‘stonith_recurring_op_helper’: execd_commands.c:257:5: error: ‘ftime’ is deprecated [-Werror=deprecated-declarations] 257 | ftime(>t_queue); | ^ In file included from execd_commands.c:23: /usr/include/i386-linux-gnu/sys/timeb.h:39:12: note: declared here 39 | extern int ftime (struct timeb *__timebuf) |^ execd_commands.c: In function ‘schedule_lrmd_cmd’: execd_commands.c:389:5: error: ‘ftime’ is deprecated [-Werror=deprecated-declarations] 389 | ftime(>t_queue); | ^ """ And man page shows: SYNOPSIS #include int ftime(struct timeb *tp); DESCRIPTION NOTE: This function is deprecated, and will be removed in a future version of the GNU C library. Use clock_gettime(2) instead. I'll fix this together with other fixes, opening this bug to track the issue. To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/pacemaker/+bug/1869751/+subscriptions ___ Mailing list: https://launchpad.net/~ubuntu-ha Post to : ubuntu-ha@lists.launchpad.net Unsubscribe : https://launchpad.net/~ubuntu-ha More help : https://help.launchpad.net/ListHelp
[Ubuntu-ha] [Bug 1869751] Re: [focal] pacemaker FTBFS because of deprecated ftime()
While some may think the fix for this is to suppress deprecated warning OR to "fix" ftime()... the actual fix for this is to start using MONOTONIC clock for the related functions: (c)rafaeldtinoco@clufocaldev:~/.../sources/ubuntu/pacemaker$ git diff HEAD diff --git a/configure.ac b/configure.ac index a4c8ae93..b7edea57 100644 --- a/configure.ac +++ b/configure.ac @@ -981,7 +981,7 @@ AC_CHECK_DECLS([CLOCK_MONOTONIC], [], [], [[ # will only be applied in 2.0.3 release and will become opt-out since # (which hopefully explains the name of the macro as it will start to # make more sense then, and the continuity is important) -CPPFLAGS="-DPCMK_TIME_EMERGENCY_CGT $CPPFLAGS" +# CPPFLAGS="-DPCMK_TIME_EMERGENCY_CGT $CPPFLAGS" dnl This solves the building issue. -- You received this bug notification because you are a member of Ubuntu High Availability Team, which is subscribed to pacemaker in Ubuntu. https://bugs.launchpad.net/bugs/1869751 Title: [focal] pacemaker FTBFS because of deprecated ftime() Status in pacemaker package in Ubuntu: Confirmed Bug description: https://people.canonical.com/~doko/ftbfs-report/test-rebuild-20200327 -focal-focal.html shows that pacemaker started to be FTBFS because of: """ gcc -DHAVE_CONFIG_H -I. -I../../include -DSUPPORT_REMOTE -I../../include -I../../include -I../../libltdl -I../../libltdl -DPCMK_TIME_EMERGENCY_CGT -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/include/glib-2.0 -I/usr/lib/i386-linux-gnu/glib-2.0/include -I/usr/include/libxml2 -I/usr/include/heartbeat -I/usr/include/dbus-1.0 -I/usr/lib/i386-linux-gnu/dbus-1.0/include -fPIE -g -O2 -fdebug-prefix-map=/<>=. -fstack-protector-strong -Wformat -Werror=format-security -ggdb -fgnu89-inline -Wall -Waggregate-return -Wbad-function-cast -Wcast-align -Wdeclaration-after-statement -Wendif-labels -Wfloat-equal -Wformat-security -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Wno-long-long -Wno-strict-aliasing -Wpointer-arith -Wwrite-strings -Wunused-but-set-variable -Wformat=2 -Wformat-nonliteral -fstack-protector-strong -Werror -c -o pacemaker_remoted-pacemaker-execd.o `test -f 'pacemaker-execd.c' || echo './'`pacemaker-execd.c execd_commands.c: In function ‘stonith_recurring_op_helper’: execd_commands.c:257:5: error: ‘ftime’ is deprecated [-Werror=deprecated-declarations] 257 | ftime(>t_queue); | ^ In file included from execd_commands.c:23: /usr/include/i386-linux-gnu/sys/timeb.h:39:12: note: declared here 39 | extern int ftime (struct timeb *__timebuf) |^ execd_commands.c: In function ‘schedule_lrmd_cmd’: execd_commands.c:389:5: error: ‘ftime’ is deprecated [-Werror=deprecated-declarations] 389 | ftime(>t_queue); | ^ """ And man page shows: SYNOPSIS #include int ftime(struct timeb *tp); DESCRIPTION NOTE: This function is deprecated, and will be removed in a future version of the GNU C library. Use clock_gettime(2) instead. I'll fix this together with other fixes, opening this bug to track the issue. To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/pacemaker/+bug/1869751/+subscriptions ___ Mailing list: https://launchpad.net/~ubuntu-ha Post to : ubuntu-ha@lists.launchpad.net Unsubscribe : https://launchpad.net/~ubuntu-ha More help : https://help.launchpad.net/ListHelp
[Ubuntu-ha] [Bug 1869751] Re: [focal] pacemaker FTBFS because of deprecated ftime()
commit 4b8b84cce1fd57eec1f47ca44780d60c148b399d Author: Jan Pokorný Date: Fri Nov 15 16:06:57 2019 +0100 Build: restore buildability in the face of obsolete ftime(3) Since the usage of ftime(3) is purely optional and since clock_gettime(3) is mandated with POSIX 2001, we can simply look at whether CLOCK_MONOTONIC is defined to be used as an identifier for the particular clock (kind exactly suitable for this context). But due to being late in the release cycle, such a change is kept as opt-in (see configure.ac comment for details), and for compatibility stability concerns[*], also dropping some old surrounding cruft is delayed. In this form, constitutes first step out of two to restore out-of-the-box buildability with recent enough glibc, again, refer to configure.ac comment. References: https://sourceware.org/git/?p=glibc.git;a=commit;h=2b5fea833bcd0f651579afd16ed7842770ecbae1 https://src.fedoraproject.org/rpms/glibc/c/ebf75398f06dd27357d8a5321e8e5959633b8182?branch=master (for a Fedora Rawhide follow-the-upstream update that led to this discovery) [*] in case you opt-in (as described), CLOCK_MONOTONIC gets detected in time.h positively but it starts choking for whatever reason in the actual build or even in run-time, you can rescind that, or you can shortcut any checking and refrain from any time period measurements altogher with something like: env \ ac_cv_header_sys_timeb_h=no ac_cv_have_decl_CLOCK_MONOTONIC=no \ ./configure -- You received this bug notification because you are a member of Ubuntu High Availability Team, which is subscribed to pacemaker in Ubuntu. https://bugs.launchpad.net/bugs/1869751 Title: [focal] pacemaker FTBFS because of deprecated ftime() Status in pacemaker package in Ubuntu: Confirmed Bug description: https://people.canonical.com/~doko/ftbfs-report/test-rebuild-20200327 -focal-focal.html shows that pacemaker started to be FTBFS because of: """ gcc -DHAVE_CONFIG_H -I. -I../../include -DSUPPORT_REMOTE -I../../include -I../../include -I../../libltdl -I../../libltdl -DPCMK_TIME_EMERGENCY_CGT -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/include/glib-2.0 -I/usr/lib/i386-linux-gnu/glib-2.0/include -I/usr/include/libxml2 -I/usr/include/heartbeat -I/usr/include/dbus-1.0 -I/usr/lib/i386-linux-gnu/dbus-1.0/include -fPIE -g -O2 -fdebug-prefix-map=/<>=. -fstack-protector-strong -Wformat -Werror=format-security -ggdb -fgnu89-inline -Wall -Waggregate-return -Wbad-function-cast -Wcast-align -Wdeclaration-after-statement -Wendif-labels -Wfloat-equal -Wformat-security -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Wno-long-long -Wno-strict-aliasing -Wpointer-arith -Wwrite-strings -Wunused-but-set-variable -Wformat=2 -Wformat-nonliteral -fstack-protector-strong -Werror -c -o pacemaker_remoted-pacemaker-execd.o `test -f 'pacemaker-execd.c' || echo './'`pacemaker-execd.c execd_commands.c: In function ‘stonith_recurring_op_helper’: execd_commands.c:257:5: error: ‘ftime’ is deprecated [-Werror=deprecated-declarations] 257 | ftime(>t_queue); | ^ In file included from execd_commands.c:23: /usr/include/i386-linux-gnu/sys/timeb.h:39:12: note: declared here 39 | extern int ftime (struct timeb *__timebuf) |^ execd_commands.c: In function ‘schedule_lrmd_cmd’: execd_commands.c:389:5: error: ‘ftime’ is deprecated [-Werror=deprecated-declarations] 389 | ftime(>t_queue); | ^ """ And man page shows: SYNOPSIS #include int ftime(struct timeb *tp); DESCRIPTION NOTE: This function is deprecated, and will be removed in a future version of the GNU C library. Use clock_gettime(2) instead. I'll fix this together with other fixes, opening this bug to track the issue. To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/pacemaker/+bug/1869751/+subscriptions ___ Mailing list: https://launchpad.net/~ubuntu-ha Post to : ubuntu-ha@lists.launchpad.net Unsubscribe : https://launchpad.net/~ubuntu-ha More help : https://help.launchpad.net/ListHelp