2001-11-20 18:38:43

by Marcel Mol

[permalink] [raw]
Subject: make modules_install fails with latest fileutils

Hi,
Just had some problems doing a modules_install with
fileutils-1.1.1-1 (redhat rawhide). The cp command
in there gives a non-zero return value when it is asked
to copy the same file in the argument list:

mkdir bar
cp foo foo bar
cp: will not overwrite just-created `bar/foo' with `foo'

and returns with return value of 1.
This will break 'make modules_install' as it often adds the same module
file as cp argument.

A quick hack:

--- Rules.make.org Tue Nov 20 19:36:16 2001
+++ Rules.make Mon Nov 19 23:48:03 2001
@@ -173,7 +173,7 @@
_modinst__: dummy
ifneq "$(strip $(ALL_MOBJS))" ""
mkdir -p $(MODLIB)/kernel/$(MOD_DESTDIR)
- cp -f $(ALL_MOBJS) $(MODLIB)/kernel/$(MOD_DESTDIR)$(MOD_TARGET)
+ -cp -f $(ALL_MOBJS) $(MODLIB)/kernel/$(MOD_DESTDIR)$(MOD_TARGET)
endif

.PHONY: modules_install


-Marcel
--
======-------- Marcel J.E. Mol MESA Consulting B.V.
=======--------- ph. +31-(0)6-54724868 P.O. Box 112
=======--------- [email protected] 2630 AC Nootdorp
__==== http://www.mesa.nl ---____U_n_i_x______I_n_t_e_r_n_e_t____ The Netherlands ____
They couldn't think of a number, Linux user 1148 -- counter.li.org
so they gave me a name! -- Rupert Hine -- http://www.ruperthine.com


2001-11-21 00:53:14

by Keith Owens

[permalink] [raw]
Subject: Re: make modules_install fails with latest fileutils

On Tue, 20 Nov 2001 19:38:20 +0100,
"Marcel J.E. Mol" <[email protected]> wrote:
>Just had some problems doing a modules_install with
>fileutils-1.1.1-1 (redhat rawhide). The cp command
>in there gives a non-zero return value when it is asked
>to copy the same file in the argument list:
>
>--- Rules.make.org Tue Nov 20 19:36:16 2001
>+++ Rules.make Mon Nov 19 23:48:03 2001
>@@ -173,7 +173,7 @@
> _modinst__: dummy
> ifneq "$(strip $(ALL_MOBJS))" ""
> mkdir -p $(MODLIB)/kernel/$(MOD_DESTDIR)
>- cp -f $(ALL_MOBJS) $(MODLIB)/kernel/$(MOD_DESTDIR)$(MOD_TARGET)
>+ -cp -f $(ALL_MOBJS) $(MODLIB)/kernel/$(MOD_DESTDIR)$(MOD_TARGET)
> endif

(1) Complain to the fileutils maintainer for introducing incompatible
behaviour.
(2) The correct workaround is
cp -f $(sort $(ALL_MOBJS)) $(MODLIB)/kernel/$(MOD_DESTDIR)$(MOD_TARGET)

2001-11-21 08:09:41

by Marcel Mol

[permalink] [raw]
Subject: Re: make modules_install fails with latest fileutils

On Wed, Nov 21, 2001 at 11:52:26AM +1100, Keith Owens wrote:
> On Tue, 20 Nov 2001 19:38:20 +0100,
> "Marcel J.E. Mol" <[email protected]> wrote:
> >Just had some problems doing a modules_install with
> >fileutils-1.1.1-1 (redhat rawhide). The cp command
> >in there gives a non-zero return value when it is asked
> >to copy the same file in the argument list:
> >
> >--- Rules.make.org Tue Nov 20 19:36:16 2001
> >+++ Rules.make Mon Nov 19 23:48:03 2001
> >@@ -173,7 +173,7 @@
> > _modinst__: dummy
> > ifneq "$(strip $(ALL_MOBJS))" ""
> > mkdir -p $(MODLIB)/kernel/$(MOD_DESTDIR)
> >- cp -f $(ALL_MOBJS) $(MODLIB)/kernel/$(MOD_DESTDIR)$(MOD_TARGET)
> >+ -cp -f $(ALL_MOBJS) $(MODLIB)/kernel/$(MOD_DESTDIR)$(MOD_TARGET)
> > endif
>
> (1) Complain to the fileutils maintainer for introducing incompatible
> behaviour.

Or to RedHat who introduced this fileutils in their tree (but then again,
it is Rawhide so I have nothing to complain about :-)

> (2) The correct workaround is
> cp -f $(sort $(ALL_MOBJS)) $(MODLIB)/kernel/$(MOD_DESTDIR)$(MOD_TARGET)

shouldn't this then be 'sort -u'.

-Marcel
--
======-------- Marcel J.E. Mol MESA Consulting B.V.
=======--------- ph. +31-(0)6-54724868 P.O. Box 112
=======--------- [email protected] 2630 AC Nootdorp
__==== http://www.mesa.nl ---____U_n_i_x______I_n_t_e_r_n_e_t____ The Netherlands ____
They couldn't think of a number, Linux user 1148 -- counter.li.org
so they gave me a name! -- Rupert Hine -- http://www.ruperthine.com

2001-11-21 22:07:32

by Keith Owens

[permalink] [raw]
Subject: Re: make modules_install fails with latest fileutils

On Wed, 21 Nov 2001 09:08:54 +0100,
"Marcel J.E. Mol" <[email protected]> wrote:
>On Wed, Nov 21, 2001 at 11:52:26AM +1100, Keith Owens wrote:
>> (2) The correct workaround is
>> cp -f $(sort $(ALL_MOBJS)) $(MODLIB)/kernel/$(MOD_DESTDIR)$(MOD_TARGET)
>
>shouldn't this then be 'sort -u'.

info make, /$(sort