Re: [PATCH v1] share/mk/: CPPFLAGS: Only define _FORTIFY_SOURCE if it's not already defined

Alejandro Colomar <[email protected]> Wed, 17 Jul 2024 19:19:15 +0200
Newsgroups dev.linux.lists.liba2i
Message-ID <b7gyj7o4mmqrbczonzvnoxjig3aas6fbskgiv4gljpzinvkwiw@y3q4k3zdqcsb>
--dtu6egu5epzazfa4
Content-Type: text/plain; protected-headers=v1; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
From: Alejandro Colomar <[email protected]>
To: [email protected]
Cc: Sam James <[email protected]>
Subject: Re: [PATCH v1] share/mk/: CPPFLAGS: Only define _FORTIFY_SOURCE if
 it's not already defined
References: <[email protected]>
MIME-Version: 1.0
In-Reply-To: <[email protected]>

On Wed, Jul 17, 2024 at 07:08:26PM GMT, Alejandro Colomar wrote:
> Reported-by: Sam James <[email protected]>
> Signed-off-by: Alejandro Colomar <[email protected]>
> ---
>=20
> Hi Sam,
>=20
> I've tested it and it seems to work as one would expect.
>=20
> Cheers,
> Alex
>=20
> Range-diff against v0:
> -:  --------- > 1:  1415c5704 share/mk/: CPPFLAGS: Only define _FORTIFY_S=
OURCE if it's not already defined
>=20
>  share/mk/configure/build-depends/cpp/cpp.mk | 18 +++++++++++++++++-
>  1 file changed, 17 insertions(+), 1 deletion(-)
>=20
> diff --git a/share/mk/configure/build-depends/cpp/cpp.mk b/share/mk/confi=
gure/build-depends/cpp/cpp.mk
> index 11ba5448d..ec8068458 100644
> --- a/share/mk/configure/build-depends/cpp/cpp.mk
> +++ b/share/mk/configure/build-depends/cpp/cpp.mk
> @@ -6,15 +6,31 @@ ifndef MAKEFILE_CONFIGURE_BUILD_DEPENDS_CPP_CPP_INCLUDED
>  MAKEFILE_CONFIGURE_BUILD_DEPENDS_CPP_CPP_INCLUDED :=3D 1
> =20
> =20
> +include $(MAKEFILEDIR)/configure/build-depends/coreutils/echo.mk
>  include $(MAKEFILEDIR)/configure/build-depends/gcc/cc.mk
> +include $(MAKEFILEDIR)/configure/build-depends/grep/grep.mk
>  include $(MAKEFILEDIR)/configure/build-depends/pkgconf/pkgconf.mk
>  include $(MAKEFILEDIR)/configure/verbose.mk
> =20
> =20
> +CPP :=3D $(CC) $(CFLAGS_) -E
> +
> +
> +CPP_HAS_ALREADY_D_FORTIFY_SOURCE :=3D \
> +	$(shell \
> +		$(CPP) -dM - -Wno-error </dev/null \
> +		| $(GREP) '#define _FORTIFY_SOURCE ' >/dev/null \
> +		&& $(ECHO) yes \
> +		|| $(ECHO) no; \
> +	)
> +
> +
>  DEFAULT_CPPFLAGS :=3D \
>  	$(shell $(PKGCONF_CMD) --cflags $(pc) $(HIDE_ERR)) \
> -	-D_FORTIFY_SOURCE=3D2 \
>  	-I$(srcdir)/
> +ifeq ($(CPP_HAS_ALREADY_D_FORTIFY_SOURCE),no)
> +DEFAULT_CPPFLAGS +=3D -D_FORTIFY_SOURCE=3D2
> +endif
>  CPPFLAGS         :=3D
>  CPPFLAGS_        :=3D $(DEFAULT_CPPFLAGS) $(CPPFLAGS)
>  CPP              :=3D $(CC) $(CFLAGS_) -E

Oops, I forgot to remove this line.  It's removed now in v2.

>=20
> base-commit: a264f9442e64d555451104257538124f831db854
> --=20
> 2.45.2
>=20



--=20
<https://www.alejandro-colomar.es/>

--dtu6egu5epzazfa4
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEE6jqH8KTroDDkXfJAnowa+77/2zIFAmaX/RMACgkQnowa+77/
2zKSvxAAj34XElTGEHS4cnDiaozsCeIiaBWqBGX0PhHHozZzmOreZbVQuJkkHmQy
nyuK74VCglBgT/5jNUZl37VCWpgE5+UiTpgssCup2rnB2kGy8IKiE1rpcOCEs5QS
4Vss2Y5+T0jgDkVPHd4hHAmgIahKhTZg0D65ft2fM15kffeqxYPJK5+/uRUTOvhv
C763mFBy6XOtLBR7I79vGK7X9paCbdFsmEqFGtZ6+mfnm/kDVqAUUc2ktu3kNNQS
6tvYPRjiXUbdm99L45rwhnltX/TFLpOeaIB4wXt3FK8wvit7quJzIUeBOBD+tlZv
K1KGzXjw/CQHshAm/Sw5RBRT0C0xhh2C36BuQRZongtdxZAJ5TvT/cFFld61vnyw
L59ERLGvHiArMFHfNhhN3aVAfD056GVV09xIzzw51CAmO0sVCknvSlOJtf9D11Q3
Dx9zE+9pd/wx6IVTAytbIOYNoRionT2nfQRLcYAjBrJpBuUC9FFlvQ42uBNbD8Q5
jbrnrW59ByfIIxisANK59SUWy2QFmzHbIl/WPtcgk38CDZouQun6cKErX7NNtcY8
+ixCrU2KUhCO9T1n56lQamyze1nvxgB2gQN0+zH+QR/wAiwJ0yMoyjQ4knFEjzOT
pNMMDRBTV7zLNWPutCt3WHjqwLmcLiVIuk88sEmaPUfNYFy8SCM=
=aY1m
-----END PGP SIGNATURE-----

--dtu6egu5epzazfa4--