[schilytools] Smake doing dependencies twice.
Friedhelm Mehnert
lists at friedhelms.net
Sat Mar 11 08:23:52 CET 2023
Hello,
there is a mysterious thing I'm wondering about for some time.
When building the Schilytools on Linux, Schilymake always does it like
this:
> ==> MAKING "all" ON SUBDIRECTORY "SRCROOT/libscg"
> ==> MAKING "all" ON SUBCOMPONENT "SRCROOT/libscg/libscg.mk"
> ==> MAKING DIRECTORY "OBJ/amd64-linux-gcc"
> ==> MAKING DIRECTORY "OBJ/amd64-linux-gcc/man"
> ==> MAKING DEPENDENCIES "OBJ/amd64-linux-gcc/scsitransp.d"
> ==> MAKING DEPENDENCIES "OBJ/amd64-linux-gcc/scsihack.d"
> ==> MAKING DEPENDENCIES "OBJ/amd64-linux-gcc/scsiopen.d"
> ==> MAKING DEPENDENCIES "OBJ/amd64-linux-gcc/scgsettarget.d"
> ==> MAKING DEPENDENCIES "OBJ/amd64-linux-gcc/scsierrs.d"
> ==> MAKING DEPENDENCIES "OBJ/amd64-linux-gcc/scgtimes.d"
> ==> MAKING DEPENDENCIES "OBJ/amd64-linux-gcc/scsihelp.d"
> ==> MAKING DEPENDENCIES "OBJ/amd64-linux-gcc/scsiopts.d"
> ==> MAKING DEPENDENCIES "OBJ/amd64-linux-gcc/rdummy.d"
> ==> MAKING DEPENDENCIES "OBJ/amd64-linux-gcc/scsitransp.d"
> ==> MAKING DEPENDENCIES "OBJ/amd64-linux-gcc/scsihack.d"
> ==> MAKING DEPENDENCIES "OBJ/amd64-linux-gcc/scsiopen.d"
> ==> MAKING DEPENDENCIES "OBJ/amd64-linux-gcc/scgsettarget.d"
> ==> MAKING DEPENDENCIES "OBJ/amd64-linux-gcc/scsierrs.d"
> ==> MAKING DEPENDENCIES "OBJ/amd64-linux-gcc/scgtimes.d"
> ==> MAKING DEPENDENCIES "OBJ/amd64-linux-gcc/scsihelp.d"
> ==> MAKING DEPENDENCIES "OBJ/amd64-linux-gcc/scsiopts.d"
> ==> MAKING DEPENDENCIES "OBJ/amd64-linux-gcc/rdummy.d"
> ==> COMPILING "OBJ/amd64-linux-gcc/scsitransp.o"
> ==> COMPILING "OBJ/amd64-linux-gcc/scsihack.o"
As you can see, it does the dependencies TWICE.
Gmake does not do this. It also seems to do the dependencies
"backwards".
> make[3]: Entering directory '/usr/local/src/cdrtools/cdrtools-3.02~2023.01.12/libscg'
> ==> MAKING "all" ON SUBCOMPONENT "SRCROOT/libscg/libscg.mk"
> make[4]: Entering directory '/usr/local/src/cdrtools/cdrtools-3.02~2023.01.12/libscg'
> ==> MAKING DIRECTORY "OBJ/amd64-linux-gcc"
> ==> MAKING DIRECTORY "OBJ/amd64-linux-gcc/man"
> ==> MAKING DEPENDENCIES "OBJ/amd64-linux-gcc/rdummy.d"
> ==> MAKING DEPENDENCIES "OBJ/amd64-linux-gcc/scsiopts.d"
> ==> MAKING DEPENDENCIES "OBJ/amd64-linux-gcc/scsihelp.d"
> ==> MAKING DEPENDENCIES "OBJ/amd64-linux-gcc/scgtimes.d"
> ==> MAKING DEPENDENCIES "OBJ/amd64-linux-gcc/scsierrs.d"
> ==> MAKING DEPENDENCIES "OBJ/amd64-linux-gcc/scgsettarget.d"
> ==> MAKING DEPENDENCIES "OBJ/amd64-linux-gcc/scsiopen.d"
> ==> MAKING DEPENDENCIES "OBJ/amd64-linux-gcc/scsihack.d"
> ==> MAKING DEPENDENCIES "OBJ/amd64-linux-gcc/scsitransp.d"
> ==> COMPILING "OBJ/amd64-linux-gcc/scsitransp.o"
> ==> COMPILING "OBJ/amd64-linux-gcc/scsihack.o"
I have looked through the source and done some experimenting, but I can
not find out, why this happens.
Best Regards
Friedhelm
More information about the schilytools
mailing list