Re: [PATCH] kconfig: update to Linux 5.2-rc4

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Jun 18, 2019 at 04:24:14PM +0900, Masahiro Yamada wrote:
> On Tue, Jun 18, 2019 at 4:11 PM Sascha Hauer <s.hauer@xxxxxxxxxxxxxx> wrote:
> >
> > On Mon, Jun 17, 2019 at 05:02:11PM +0900, Masahiro Yamada wrote:
> > > Hi Sascha,
> > >
> > > On Mon, Jun 17, 2019 at 4:05 PM Sascha Hauer <s.hauer@xxxxxxxxxxxxxx> wrote:
> > > >
> > > > Hi Masahiro,
> > > >
> > > > On Mon, Jun 10, 2019 at 05:47:04PM +0900, Masahiro Yamada wrote:
> > > > > @@ -854,7 +860,7 @@ define symlink-config-h
> > > > >       fi
> > > > >  endef
> > > > >
> > > > > -include/config.h: include/config/auto.conf
> > > > > +include/config.h:
> > > > >       $(Q)$(symlink-config-h)
> > > >
> > > > I had to revert this change. Without the dependency to
> > > > include/config/auto.conf include/config.h won't get updated on Kconfig
> > > > changes. Is reverting this change the right thing to do or do we have to
> > > > do something else?
> > >
> > > You are right.
> > >
> > > Once include/config.h is created, it will never be updated.
> > >
> > > Reverting this hunk would work in most cases,
> > > but I think it is strange to use timestamps to determine
> > > whether a symbolic link is re-linked or not.
> > >
> > > If include/config.h is a symlink, it will end up with comparing
> > > the timestamps between $(srctree)/$(BOARD)/config.h and
> > > include/config/auto.conf, which is pointless.
> > >
> > >
> > > I do not know why 'touch -a $@' is needed
> > > when $(srctree)/$(BOARD)/config.h does not exist.
> > >
> > > How about this?
> > >
> > >
> > >
> > > diff --git a/Makefile b/Makefile
> > > index 071b927068c4..196a2a2625c8 100644
> > > --- a/Makefile
> > > +++ b/Makefile
> > > @@ -827,7 +827,7 @@ endif
> > >  prepare2: prepare3 outputmakefile
> > >
> > >  prepare1: prepare2 include/generated/version.h include/generated/utsrelease.h \
> > > -                   include/config.h
> > > +                   symlink-config-h
> > >
> > >  ifneq ($(KBUILD_MODULES),)
> > >         $(Q)mkdir -p $(MODVERDIR)
> > > @@ -849,16 +849,14 @@ export CPPFLAGS_barebox.lds += -C -U$(ARCH)
> > >
> > >  define symlink-config-h
> > >         if [ -f $(srctree)/$(BOARD)/config.h ]; then            \
> > > -               $(kecho) '  SYMLINK $@ -> $(BOARD)/config.h';   \
> > >                 ln -fsn $(srctree)/$(BOARD)/config.h $@;        \
> > >         else                                                    \
> > > -               [ -h $@ ] && rm -f $@;                          \
> > > -               $(kecho) '  CREATE  $@';                        \
> > > -               touch -a $@;                                    \
> > > +               rm -f $@;                                       \
> > >         fi
> > >  endef
> > >
> > > -include/config.h:
> > > +PHONY += symlink-config-h
> > > +symlink-config-h:
> > >         $(Q)$(symlink-config-h)
> >
> > This creates a link named "symlink-config-h" pointing to the boards
> > config.h.
> 
> Oops, sorry.
> 
> I forgot to change the rule like follows:
> 
> ln -fsn $(srctree)/$(BOARD)/config.h include/config.h
> 
> 
> 
> > If I understand correctly then the idea is to always (re-)create the
> > symlink. For this adding PHONY should be enough, no? At least in my test
> > it seemed to do what it should.
> 
> Right.  Adding it to PHONY is enough.
> Renaming include/config.h -> symlink-config-h is optional.
> 
> (My intention was to make it look like a phony target and that's it.)

Ok, thanks. For now I took the easy way out and squashed the adding of
PHONY into the patch.

Sascha

-- 
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

_______________________________________________
barebox mailing list
barebox@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/barebox



[Index of Archives]     [Linux Embedded]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux