[ccontrol] ccontrol 0.6 make bug

Martin Schwenke martin at meltin.net
Thu Dec 15 15:21:33 EST 2005


>>>>> "Rusty" == Rusty Russell <rusty at rustcorp.com.au> writes:

    Rusty> Hmm, we do override $MAKE to force it back to "make"
    Rusty> (otherwise it's /usr/bin/make, which would bypass
    Rusty> ccontrol).

    Rusty> I wonder if they're doing something funky like setting
    Rusty> $MAKE to "make install_root=..." and we're blowing it away?
    Rusty> Does hacking the ccontrol source to print out the original
    Rusty> $MAKE show anything?

ccontrol: 23462: $MAKE ismake

So, adding an echo to a rule in both Makefiles gives (with ccontrol):

--------8<---------8<-------- CUT HERE --------8<---------8<--------
rover|~/downloads/crosstool/crosstool-0.38/build/powerpc-604-linux-gnu/gcc-4.0.2-glibc-2.2.5/build-glibc|44> make install_root=/opt/crosstool/gcc-4.0.2-glibc-2.2.5/powerpc-604-linux-gnu/powerpc-604-linux-gnu prefix= install
MAKEFLAGS at top is j -- prefix= install_root=/opt/crosstool/gcc-4.0.2-glibc-2.2.5/powerpc-604-linux-gnu/powerpc-604-linux-gnu
LANGUAGE=C LC_ALL=C; export LANGUAGE LC_ALL; \
        make -r PARALLELMFLAGS="" CVSOPTS="" -C /home/martins/downloads/crosstool/crosstool-0.38/build/powerpc-604-linux-gnu/gcc-4.0.2-glibc-2.2.5/glibc-2.2.5 objdir=`pwd` install
make[1]: Entering directory `/home/martins/downloads/crosstool/crosstool-0.38/build/powerpc-604-linux-gnu/gcc-4.0.2-glibc-2.2.5/glibc-2.2.5'
MAKEFLAGS nested is wrj -- objdir=/home/martins/downloads/crosstool/crosstool-0.38/build/powerpc-604-linux-gnu/gcc-4.0.2-glibc-2.2.5/build-glibc CVSOPTS= PARALLELMFLAGS=
--------8<---------8<-------- CUT HERE --------8<---------8<--------

Notice that MAKEFLAGS gets totally replaced.

Without ccontrol it looks like:

--------8<---------8<-------- CUT HERE --------8<---------8<--------
rover|~/downloads/crosstool/crosstool-0.38/build/powerpc-604-linux-gnu/gcc-4.0.2-glibc-2.2.5/build-glibc|48> make install_root=/opt/crosstool/gcc-4.0.2-glibc-2.2.5/powerpc-604-linux-gnu/powerpc-604-linux-gnu prefix= install
MAKEFLAGS at top is prefix= install_root=/opt/crosstool/gcc-4.0.2-glibc-2.2.5/powerpc-604-linux-gnu/powerpc-604-linux-gnu
LANGUAGE=C LC_ALL=C; export LANGUAGE LC_ALL; \
        make -r PARALLELMFLAGS="" CVSOPTS="" -C /home/martins/downloads/crosstool/crosstool-0.38/build/powerpc-604-linux-gnu/gcc-4.0.2-glibc-2.2.5/glibc-2.2.5 objdir=`pwd` install
make[1]: Entering directory `/home/martins/downloads/crosstool/crosstool-0.38/build/powerpc-604-linux-gnu/gcc-4.0.2-glibc-2.2.5/glibc-2.2.5'
MAKEFLAGS nested is wr -- objdir=/home/martins/downloads/crosstool/crosstool-0.38/build/powerpc-604-linux-gnu/gcc-4.0.2-glibc-2.2.5/build-glibc CVSOPTS= PARALLELMFLAGS= install_root=/opt/crosstool/gcc-4.0.2-glibc-2.2.5/powerpc-604-linux-gnu/powerpc-604-linux-gnu prefix=
--------8<---------8<-------- CUT HERE --------8<---------8<--------

So there's some fancy concatenation of MAKEFLAGS going on in make...

peace & happiness,
martin




More information about the ccontrol mailing list