Lot of changes happened in this area in last 48 hours. There is no bootstrap 
step needed anymore.

Do you still see issues?


> On 15 Mar 2018, at 00:49, Jon Loeliger <j...@netgate.com> wrote:
> 
> Good Evening Sports Fans,
> 
> Have we got a match for you tonight!
> 
> In this corner, ccache.  Loved for it speed and hackery, hated for
> its invasive corruptibility.
> 
> In the other corner, we have vppapigen, loved tool of the single-source
> definitions for all things yet hated as the monster that will not die!
> 
> Tonight we bring them together in the top-level Makefile, in a clause
> that might leave a few, myself included, mystified:
> 
> ifeq ("$(wildcard /usr/bin/ccache )","")
>         @echo "WARNING: Please install ccache AYEC and re-run this script"
> else
>         @rm -rf $(BR)/tools/ccache-bin
>         @mkdir -p $(BR)/tools/ccache-bin
>         @ln -s /usr/bin/ccache $(BR)/tools/ccache-bin/gcc
>         @ln -s /usr/bin/ccache $(BR)/tools/ccache-bin/g++
>         @ln -s /usr/bin/ccache $(BR)/tools/ccache-bin/clang
>         @ln -s /usr/bin/ccache $(BR)/tools/ccache-bin/clang++
>         mkdir -p $(BR)/tools/bin
>         rm -f $(BR)/tools/bin/vppapigen
>         ln -s $(WS_ROOT)/src/tools/vppapigen/vppapigen \
>                $(BR)/tools/bin/vppapigen
>         ls -lsa $(BR)/tools/bin
> endif
>         @touch $@
> 
> You might recognize that as part of the $(BR)/.bootstrap.ok target!
> It is!  You could win!
> 
> But first, let's see what happens when ccache is NOt installed on the
> build machine!  Yep, you get that warning:
> 
>         @echo "WARNING: Please install ccache AYEC and re-run this script"
> 
> Naturally, that is lost way, way, back at the beginning of the scroll-back.  
> Twenty
> minutes of scroll-back.  Unless....  Yes, in just under 2 minutes, the build 
> fails!
> Quizically like this:
> 
>   APIGEN   vlibmemory/memclnt.api.h
>   JSON API vlibmemory/memclnt.api.json
> /bin/sh: line 2: vppapigen: command not found
> /bin/sh: line 2: vppapigen: command not found
> 
> So, yeah, installing ccache clears all that up.
> 
> And since using vppapigen is sort of necessary for the
> whole build here, using ccache is not really an optional
> build-time dependency anymore.  If you're cools with that,
> I'm cool with that, but we should list it as a build-time
> requirement for all build hosts including CentOS:
> 
> $ git grep ccache Makefile
> Makefile:CCACHE_DIR?=$(BR)/.ccache
> Makefile:DEB_DEPENDS  = curl build-essential autoconf automake ccache
> Makefile:RPM_SUSE_BUILDTOOLS_DEPS = autoconf automake ccache check-devel 
> chrpath
> 
> If no one beats me to it, I might submit a patch to
> help the situation.
> 
> So it's a tie!
> 
> jdl
> 
> 
> 
> 

Reply via email to