From 32fd2d327a841841a0aa1440994fd072eb7973b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakov=20Smoli=C4=87?= Date: Wed, 27 Apr 2022 23:09:17 +0200 Subject: [PATCH] sys-devel/bmake: Fix compilation warnings MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Closes: https://bugs.gentoo.org/841362 Signed-off-by: Jakov Smolić --- sys-devel/bmake/bmake-20220418.ebuild | 5 ++- .../bmake/files/bmake-20220418-warnings.patch | 38 +++++++++++++++++++ 2 files changed, 42 insertions(+), 1 deletion(-) create mode 100644 sys-devel/bmake/files/bmake-20220418-warnings.patch diff --git a/sys-devel/bmake/bmake-20220418.ebuild b/sys-devel/bmake/bmake-20220418.ebuild index 7b11aa7cebf44..5505e007c65a1 100644 --- a/sys-devel/bmake/bmake-20220418.ebuild +++ b/sys-devel/bmake/bmake-20220418.ebuild @@ -17,7 +17,10 @@ SLOT="0" KEYWORDS="~amd64 ~ppc ~x86" # Skip failing test (sandbox and csh) -PATCHES=( "${FILESDIR}"/${PN}-20210206-tests.patch ) +PATCHES=( + "${FILESDIR}"/${PN}-20210206-tests.patch + "${FILESDIR}"/${PN}-20220418-warnings.patch +) src_prepare() { default diff --git a/sys-devel/bmake/files/bmake-20220418-warnings.patch b/sys-devel/bmake/files/bmake-20220418-warnings.patch new file mode 100644 index 0000000000000..1fccb91e95a30 --- /dev/null +++ b/sys-devel/bmake/files/bmake-20220418-warnings.patch @@ -0,0 +1,38 @@ +# https://bugs.gentoo.org/841362 +# +# Fix -Wimplicit-function-declaration and -Wunused-result warnings +# +# meta.c: In function ‘meta_name’: +# meta.c:262:21: warning: implicit declaration of function ‘strlcpy’; did you mean ‘strncpy’? [-Wimplicit-function-declaration] +# 262 | strlcpy(rp, tname_base, sizeof buf - (size_t)(rp - buf)); +# | ^~~~~~~ +# | strncpy +# +# meta.c: In function ‘meta_job_error’: +# meta.c:774:5: warning: ignoring return value of ‘getcwd’ declared with attribute ‘warn_unused_result’ [-Wunused-result] +# 774 | getcwd(cwd, sizeof cwd); +# | ^~~~~~~~~~~~~~~~~~~~~~~ + +--- a/meta.c ++++ b/meta.c +@@ -106,6 +106,10 @@ + char * stresep(char **, const char *, int); + #endif + ++#if !defined(HAVE_STRLCPY) ++size_t strlcpy(char *, const char *, size_t); ++#endif ++ + /* + * Filemon is a kernel module which snoops certain syscalls. + * +@@ -769,7 +773,8 @@ + } + if (gn != NULL) + Global_Set(".ERROR_TARGET", GNode_Path(gn)); +- getcwd(cwd, sizeof cwd); ++ if (getcwd(cwd, sizeof cwd) == NULL) ++ err(1, "Could not get current working directory"); + Global_Set(".ERROR_CWD", cwd); + if (pbm->meta_fname[0] != '\0') { + Global_Set(".ERROR_META_FILE", pbm->meta_fname);