Public bug reported: As per the archive test rebuild done recently by doko, nss FTBFS due to a compiler warning raised by gcc-10 (and this fails the build due to the use of -Werror in CFLAGS):
https://launchpad.net/ubuntu/+archive/test- rebuild-20200925-groovy/+build/20033437 nsinstall.c: In function ‘main’: nsinstall.c:70:16: error: argument 1 is null but the corresponding size argument 2 value is 4096 [-Werror=nonnull] 70 | #define GETCWD getcwd | ^ nsinstall.c:239:8: note: in expansion of macro ‘GETCWD’ 239 | cwd = GETCWD(0, PATH_MAX); | ^~~~~~ In file included from nsinstall.c:20: /usr/include/unistd.h:520:14: note: in a call to function ‘getcwd’ declared with attribute ‘write_only (1, 2)’ 520 | extern char *getcwd (char *__buf, size_t __size) __THROW __wur | ^~~~~~ nsinstall.c:70:16: error: argument 1 is null but the corresponding size argument 2 value is 4096 [-Werror=nonnull] 70 | #define GETCWD getcwd | ^ nsinstall.c:246:13: note: in expansion of macro ‘GETCWD’ 246 | todir = GETCWD(0, PATH_MAX); | ^~~~~~ In file included from nsinstall.c:20: /usr/include/unistd.h:520:14: note: in a call to function ‘getcwd’ declared with attribute ‘write_only (1, 2)’ 520 | extern char *getcwd (char *__buf, size_t __size) __THROW __wur | ^~~~~~ cc1: all warnings being treated as errors According to the upstream bug report at https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96832 this would appear to be because of the annotation of getcwd() with the access attribute. However, there seems to be some debate about the best way to resolve this (whether in glibc or in the callers of getcwd, ie nss) for now I propose to just disable this check via the use of gcc's #pragma directive. ** Affects: nss (Ubuntu) Importance: Undecided Status: New ** Tags: ftbfs patch ** Tags added: ftbfs -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to nss in Ubuntu. https://bugs.launchpad.net/bugs/1897666 Title: FTBFS: nss for groovy ftbfs due to erroneous nonnull check arising from glibc getcwd() annotation Status in nss package in Ubuntu: New Bug description: As per the archive test rebuild done recently by doko, nss FTBFS due to a compiler warning raised by gcc-10 (and this fails the build due to the use of -Werror in CFLAGS): https://launchpad.net/ubuntu/+archive/test- rebuild-20200925-groovy/+build/20033437 nsinstall.c: In function ‘main’: nsinstall.c:70:16: error: argument 1 is null but the corresponding size argument 2 value is 4096 [-Werror=nonnull] 70 | #define GETCWD getcwd | ^ nsinstall.c:239:8: note: in expansion of macro ‘GETCWD’ 239 | cwd = GETCWD(0, PATH_MAX); | ^~~~~~ In file included from nsinstall.c:20: /usr/include/unistd.h:520:14: note: in a call to function ‘getcwd’ declared with attribute ‘write_only (1, 2)’ 520 | extern char *getcwd (char *__buf, size_t __size) __THROW __wur | ^~~~~~ nsinstall.c:70:16: error: argument 1 is null but the corresponding size argument 2 value is 4096 [-Werror=nonnull] 70 | #define GETCWD getcwd | ^ nsinstall.c:246:13: note: in expansion of macro ‘GETCWD’ 246 | todir = GETCWD(0, PATH_MAX); | ^~~~~~ In file included from nsinstall.c:20: /usr/include/unistd.h:520:14: note: in a call to function ‘getcwd’ declared with attribute ‘write_only (1, 2)’ 520 | extern char *getcwd (char *__buf, size_t __size) __THROW __wur | ^~~~~~ cc1: all warnings being treated as errors According to the upstream bug report at https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96832 this would appear to be because of the annotation of getcwd() with the access attribute. However, there seems to be some debate about the best way to resolve this (whether in glibc or in the callers of getcwd, ie nss) for now I propose to just disable this check via the use of gcc's #pragma directive. To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/nss/+bug/1897666/+subscriptions -- Mailing list: https://launchpad.net/~touch-packages Post to : touch-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp