On Thu, Jun 1, 2023 at 6:36 PM Paul Moore <paul@xxxxxxxxxxxxxx> wrote: > On Thu, Jun 1, 2023 at 5:47 PM Paul Moore <paul@xxxxxxxxxxxxxx> wrote: > > > > As noted in the comments of this commit, the current SELinux Makefile > > requires features found in make v4.3 or later, which is problematic > > as the Linux Kernel currently only requires make v3.82. This patch > > fixes the SELinux Makefile so that it works properly on these older > > versions of make, and adds a couple of comments to the Makefile about > > how it can be improved once make v4.3 is required by the kernel. > > > > Fixes: 6f933aa7dfd0 ("selinux: more Makefile tweaks") > > Signed-off-by: Paul Moore <paul@xxxxxxxxxxxxxx> > > --- > > security/selinux/Makefile | 17 ++++++++++++++--- > > 1 file changed, 14 insertions(+), 3 deletions(-) > > > > diff --git a/security/selinux/Makefile b/security/selinux/Makefile > > index ab8c3093d5fd..abf19fee09f8 100644 > > --- a/security/selinux/Makefile > > +++ b/security/selinux/Makefile > > @@ -3,6 +3,11 @@ > > # Makefile for building the SELinux module as part of the kernel tree. > > # > > > > +# NOTE: There are a number of improvements that can be made to this Makefile > > +# once the kernel requires make v4.3 or greater; the most important feature > > +# lacking in older versions of make is support for grouped targets. These > > +# improvements are noted inline in the Makefile below ... > > + > > obj-$(CONFIG_SECURITY_SELINUX) := selinux.o > > > > ccflags-y := -I$(srctree)/security/selinux -I$(srctree)/security/selinux/include > > @@ -19,11 +24,17 @@ selinux-$(CONFIG_IMA) += ima.o > > > > genhdrs := flask.h av_permissions.h > > > > -$(addprefix $(obj)/,$(selinux-y)): $(addprefix $(obj)/,$(genhdrs)) > > +# see the note above, replace the dependency rule with the one below: > > +# $(addprefix $(obj)/,$(selinux-y)): $(addprefix $(obj)/,$(genhdrs)) > > +$(addprefix $(obj)/,$(selinux-y)): $(obj)/flask.h > > > > quiet_cmd_genhdrs = GEN $(addprefix $(obj)/,$(genhdrs)) > > cmd_genhdrs = $< $(addprefix $(obj)/,$(genhdrs)) > > > > -targets += $(genhdrs) > > -$(addprefix $(obj)/,$(genhdrs)) &: scripts/selinux/genheaders/genheaders FORCE > > +# see the note above, replace the $targets and $genhdrs dependency rule with > > +# the lines below: > > My apologies, I didn't fully refresh my patch before sending it out so > there is a slight difference in the comments, below is what I > currently have in my working branch: Merged into selinux/next. > -# see the note above, replace the $targets and $genhdrs dependency rule with > -# the lines below: > +# see the note above, replace the $targets and 'flask.h' rule with the lines > +# below: -- paul-moore.com