Re: [PATCH 09/11] kbuild: drop vmlinux dependency from 'make install'

From: Keith Owens
Date: Wed Feb 01 2006 - 18:25:29 EST


"Sam Ravnborg" (on Tue, 31 Jan 2006 22:04:19 +0100 (CET)) wrote:
>> On Mon, 2006-01-09 at 22:38 +0100, Sam Ravnborg wrote:
>>> This removes the dependency from vmlinux to install, thus avoiding the
>>> current situation where "make install" has a nasty tendency to leave
>>> root-turds in the working directory.
>>
>> One minor issue I've noticed with this is that I have script that do:
>>
>> make -j8 vmlinux install
>>
>> Without the dependency, I think the install is done in parallel, and
>> doesn't get the result of that build.
>Correct. All targets on the commandline are evaluated in parallel.
>
>> Is there a way I can accomplish
>> the same thing with one make command with the new dependency?
>No - unfortunately not.
>
>Oh, you may restrict yourself to UP and use make -j1 but that would be
>a workaround ;-)

Pseudo code: make install, modules-install etc. depend on other targets
if and only if there are multiple targets on the command line. A bare
make install will have no dependencies on vmlinux, make install plus
other targets will wait for the other targets. Mind you, I still think
that removing the dependency to avoid root turds is the wrong approach.

goal := $(sort $(MAKECMDGOALS))
goal_install := $(filter %install,$(goal))
goal_other := $(filter-out %install,$(goal))
ifneq ($(goal_install),)
ifneq ($(goal_other),)
$(goal_install): $(goal_other)
endif
endif

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/