[Buildroot] [PATCH 1/2] package/skeleton: parametrise the symlinks-or-mkdir macro

Yann E. MORIN yann.morin.1998 at free.fr
Fri Nov 27 22:50:26 UTC 2015


Arnout, All,

On 2015-11-27 22:58 +0100, Arnout Vandecappelle spake thusly:
> On 26-11-15 23:13, Yann E. MORIN wrote:
> > currently, we only make the merged symlinks or non-merged mkdirs in the
> > target directory. This is fine, as long as one does not run gdb.
> > 
> > However, as soon as one wants to run gdb (or gdbserver) on the target,
> > gdb will only search for libraries in /lib in the sysroot.
> > 
> > In preparation for a patch to fix that, make the symlink-or-mkdir macro
> > a function that takes as parameter the base directory where to create
> > symlinks or mkdir in.
> > 
> > Move the function declarations our of the custom/non-custom skeleton
> > conditional block, so they are always available.
> > 
> > Reported-by: Pieterjan Camerlynck <pieterjan.camerlynck at gmail.com>
> > Signed-off-by: "Yann E. MORIN" <yann.morin.1998 at free.fr>
> > Cc: Pieterjan Camerlynck <pieterjan.camerlynck at gmail.com>
> > Cc: Maxime Hadjinlian <maxime.hadjinlian at gmail.com>
> > Cc: Peter Korsgaard <jacmet at uclibc.org>
> > Cc: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>
> 
> Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout at mind.be>
> 
>  But...
> 
> > ---
> >  package/skeleton/skeleton.mk | 31 ++++++++++++++++---------------
> >  1 file changed, 16 insertions(+), 15 deletions(-)
> > 
> > diff --git a/package/skeleton/skeleton.mk b/package/skeleton/skeleton.mk
> > index 46e8cc4..b296cbd 100644
> > --- a/package/skeleton/skeleton.mk
> > +++ b/package/skeleton/skeleton.mk
> > @@ -57,27 +57,28 @@ else # ! custom skeleton
> >  
> >  SKELETON_PATH = system/skeleton
> >  
> > -ifeq ($(BR2_ROOTFS_MERGED_USR),y)
> > -define SKELETON_USR_SYMLINKS_OR_DIRS
> > -	ln -snf usr/bin $(TARGET_DIR)/bin
> > -	ln -snf usr/sbin $(TARGET_DIR)/sbin
> > -	ln -snf usr/lib $(TARGET_DIR)/lib
> > -endef
> > -else
> > -define SKELETON_USR_SYMLINKS_OR_DIRS
> > -	$(INSTALL) -d -m 0755 $(TARGET_DIR)/bin
> > -	$(INSTALL) -d -m 0755 $(TARGET_DIR)/sbin
> > -	$(INSTALL) -d -m 0755 $(TARGET_DIR)/lib
> > -endef
> > -endif
> > -
> >  endif # ! custom skeleton
> >  
> > +# This function handles the merged or non-merged /usr cases
> > +ifeq ($(BR2_ROOTFS_MERGED_USR),y)
> > +define SKELETON_USR_SYMLINKS_OR_DIRS
> 
>  We usually make functions lowercase rather than uppercase, although there are
> notable exceptions like MESSAGE and UPPERCASE.

Well, one may argue that hooks are functions like any other, and we
write them in upper-case.

So yes, we usually write lower-case functions in the infras. But
(almost?) everything in packages is upper-case, so I think it is
best to not get diverge too much to what we do in other packages.

Regards,
Yann E. MORIN.

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'



More information about the buildroot mailing list