[Top][All Lists]

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

[Axiom-developer] Re: Ping: case insensitive filesystems

From: Waldek Hebisch
Subject: [Axiom-developer] Re: Ping: case insensitive filesystems
Date: Thu, 16 Nov 2006 01:07:11 +0100 (CET)

Bill Page wrote:
> BTW, the output of the algebra/Makefile looks a little strange:
> ...
> rm -rf /home/page/axiom.test/int/algebra/FTEM.NRLIB
> copying FTEM.NRLIB to FTEM.o
> compiling GENEEZ.spad to GENEEZ.NRLIB
> rm -rf /home/page/axiom.test/int/algebra/GENEEZ.NRLIB
> copying GENEEZ.NRLIB to GENEEZ.o
> compiling GENMFACT.spad to GENMFACT.NRLIB
> rm -rf /home/page/axiom.test/int/algebra/GENMFACT.NRLIB
> ...
> Notice how it appears as if the *.NRLIB directory is deleted before
> *.NRLIB/code.o is copied! :-) I am sure it is ok but we need to check
> the
> order of the echo statements.

Well the relevant code is:

.PRECIOUS: ${MID}/%.NRLIB/code.o
${MID}/%.NRLIB/code.o: ${MID}/%.spad
        @ echo compiling $*.spad to $*.NRLIB
        rm -rf ${MID}/$*.NRLIB
        @ (cd ${MID} ; \
           if [ -z "${NOISE}" ] ; then \
            echo ")co $*.spad" | ${INTERPSYS}  ; \
           else \
             echo ")co $*.spad" | ${INTERPSYS} >> ${TMP}/trace ; \
           fi )

Logically removing old file is the first step of compilation. But
because of '@' char make does not echo the compile command, so you
get the output as-is.

BTW: I would write the above as:

${MID}/%.NRLIB/code.o: ${MID}/%.spad
        rm -rf ${MID}/$*.NRLIB
        echo ")co $*.spad" | ${INTERPSYS}  ${COMPOUTPUT}

with COMPOUTPUT beeeing ">> ${TMP}/trace" if we want silent
compilation and "| cat" if we want all messages. Note that
once we remove '@' char the first echo command is useless, since
the second line contains requested information.

                              Waldek Hebisch

reply via email to

[Prev in Thread] Current Thread [Next in Thread]