[Makefile] nothing to be done for 'all'

hello,
I have a firts makefile who call others makefile. for this i use:

$ make -f linux.mak

and output his:

$ make -f linux.mak all
make -C DerelictAL all PLATFORM=linux
make[1]: Entering directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictAL'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictAL'
make -C DerelictFMOD all PLATFORM=linux	
make[1]: Entering directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictFMOD'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictFMOD'
make -C DerelictFT all PLATFORM=linux
make[1]: Entering directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictFT'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictFT'
make -C DerelictGL all PLATFORM=linux
make[1]: Entering directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictGL'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictGL'
make -C DerelictIL all PLATFORM=linux
make[1]: Entering directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictIL'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictIL'
make -C DerelictODE all PLATFORM=linux
make[1]: Entering directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictODE'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictODE'
make -C DerelictOgg all PLATFORM=linux
make[1]: Entering directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictOgg'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictOgg'
make -C DerelictPA all PLATFORM=linux
make[1]: Entering directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictPA'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictPA'
make -C DerelictSDL all PLATFORM=linux
make[1]: Entering directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictSDL'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictSDL'
make -C DerelictSFML all PLATFORM=linux
make[1]: Entering directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictSFML'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictSFML'
make -C DerelictUtil all PLATFORM=linux
make[1]: Entering directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictUtil'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictUtil'
[builder@jonathan derelict2-20100407]$ make -f linux.mak all
make -C DerelictAL all PLATFORM=linux
make[1]: Entering directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictAL'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictAL'
make -C DerelictFMOD all PLATFORM=linux	
make[1]: Entering directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictFMOD'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictFMOD'
make -C DerelictFT all PLATFORM=linux
make[1]: Entering directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictFT'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictFT'
make -C DerelictGL all PLATFORM=linux
make[1]: Entering directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictGL'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictGL'
make -C DerelictIL all PLATFORM=linux
make[1]: Entering directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictIL'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictIL'
make -C DerelictODE all PLATFORM=linux
make[1]: Entering directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictODE'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictODE'
make -C DerelictOgg all PLATFORM=linux
make[1]: Entering directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictOgg'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictOgg'
make -C DerelictPA all PLATFORM=linux
make[1]: Entering directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictPA'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictPA'
make -C DerelictSDL all PLATFORM=linux
make[1]: Entering directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictSDL'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictSDL'
make -C DerelictSFML all PLATFORM=linux
make[1]: Entering directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictSFML'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictSFML'
make -C DerelictUtil all PLATFORM=linux
make[1]: Entering directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictUtil'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/builder/rpmbuild/SOURCES/derelict2-20100407/DerelictUtil'

linux.mak file:

include inc/linux_inc.mak

all : DerelictAL_ALL DerelictFMODEX_ALL DerelictFT_ALL DerelictGL_ALL DerelictIL_ALL DerelictODE_ALL DerelictOgg_ALL DerelictPA_ALL DerelictSDL_ALL DerelictSFML_ALL DerelictUtil_ALL

# Targets for all libs in each package
DerelictAL_ALL :
	$(DMAKE) -C DerelictAL all PLATFORM=linux
	
DerelictFMODEX_ALL :
	$(DMAKE) -C DerelictFMOD all PLATFORM=linux	

DerelictFT_ALL :
	$(DMAKE) -C DerelictFT all PLATFORM=linux
		
DerelictGL_ALL :
	$(DMAKE) -C DerelictGL all PLATFORM=linux
	
DerelictIL_ALL :
	$(DMAKE) -C DerelictIL all PLATFORM=linux
	
DerelictODE_ALL :
	$(DMAKE) -C DerelictODE all PLATFORM=linux
	
DerelictOgg_ALL :
	$(DMAKE) -C DerelictOgg all PLATFORM=linux
	
DerelictPA_ALL:
	$(DMAKE) -C DerelictPA all PLATFORM=linux

DerelictSDL_ALL :
	$(DMAKE) -C DerelictSDL all PLATFORM=linux

DerelictSFML_ALL :
	$(DMAKE) -C DerelictSFML all PLATFORM=linux
	
DerelictUtil_ALL :
	$(DMAKE) -C DerelictUtil all PLATFORM=linux
	
# There's only one DerelictAL target
DerelictAL : DerelictAL_ALL

# There's only one DerelictFMODEX target
DerelictFMODEX : DerelictFMODEX_ALL

# There's only one DerelictFT target
DerelictFT : DerelictFT_ALL
	
# Individual DerelictGL targets
DerelictGL :
	$(DMAKE) -C DerelictGL DerelictGL PLATFORM=linux
	
DerelictGLU :
	$(DMAKE) -C DerelictGL DerelictGLU PLATFORM=linux
	
# Individual DerelictIL targets
DerelictIL :
	$(DMAKE) -C DerelictIL DerelictIL PLATFORM=linux
	
DerelictILU :
	$(DMAKE) -C DerelictIL DerelictILU PLATFORM=linux
	
DerelictILUT :
	$(DMAKE) -C DerelictIL DerelictILUT PLATFORM=linux
	
# There's only one target for DerelictODE
DerelictODE : DerelictODE_ALL
	
# Individual DerelictOgg targets
DerelictOgg :
	$(DMAKE) -C DerelictOgg DerelictOgg PLATFORM=linux
	
# There's only one target for DerelictPA
DerelictPA : DerelictPA_ALL	
	
DerelictVorbis :
	$(DMAKE) -C DerelictOgg DerelictVorbis PLATFORM=linux
	
DerelictVorbisEnc :
	$(DMAKE) -C DerelictOgg DerelictVorbisEnc PLATFORM=linux
	
DerelictVorbisFile :
	$(DMAKE) -C DerelictOgg DerelictVorbisFile PLATFORM=linux	
	
# Individual DerelictSDL targets
DerelictSDL :
	$(DMAKE) -C DerelictSDL DerelictSDL PLATFORM=linux
	
DerelictSDLImage :
	$(DMAKE) -C DerelictSDL DerelictSDLImage PLATFORM=linux

DerelictSDLMixer :
	$(DMAKE) -C DerelictSDL DerelictSDLMixer PLATFORM=linux

DerelictSDLNet :
	$(DMAKE) -C DerelictSDL DerelictSDLNet PLATFORM=linux
	
DerelictSDLttf :
	$(DMAKE) -C DerelictSDL DerelictSDLttf PLATFORM=linux
	
# Individual DerelictSFML targets
DerelictSFMLWindow :
	$(DMAKE) -C DerelictSFML DerelictSFMLWindow PLATFORM=linux
	
DerelictSFMLSystem :
	$(DMAKE) -C DerelictSFML DerelictSFMLSystem PLATFORM=linux
	
DerelictSFMLGraphics :
	$(DMAKE) -C DerelictSFML DerelictSFMLGraphics PLATFORM=linux
	
DerelictSFMLAudio :
	$(DMAKE) -C DerelictSFML DerelictSFMLAudio PLATFORM=linux
	
DerelictSFMLNetwork :
	$(DMAKE) -C DerelictSFML DerelictSFMLNetwork PLATFORM=linux
	
# There's only one DerelictUtil target
DerelictUtil : DerelictUtil_All
	
cleanall : cleanlib cleandi

clean : cleanlib

cleanlib:
	cd DerelictUtil && $(RM) $(LIB_DEST)/*.a
	
cleandi:
	cd DerelictUtil  && $(RMR) $(IMPORT_DEST)/derelict

DerelictAL makefile:

include ../inc/$(PLATFORM)_inc.mak

all : DerelictAL

SOURCES= $(shell find . -name '*.d' )
OBJECTS= $(shell echo $(SOURCES) | sed -e 's/\.d/\.o/g')

DerelictAL : $(LIBNAME)

$(LIBNAME) : IMPORTS=-Iderelict
$(LIBNAME) : $(OBJECTS)
	$(make-lib)

%.o : %.d
	$(DC) $(DFLAGS) $(IMPORTS) -c $< $(output)
	
install: all
	install -d $(IMPORT_DEST)/openal
	(cd src;   echo $(SOURCES)   | sed -e s,src/,,g   | xargs tar c) | (cd $(SOURCES); tar xv)
	install -d $(LIB_DEST)
	install -m 644 $(LIBNAME)   $(LIB_DEST)
	
uninstall:
	$(foreach dir,$(shell ls derelict)  , rm -rf $($(IMPORT_DEST)/$(dir))
	
clean:
	-rm -f $(LIBNAME) $(OBJECTS)

Thanks for any help

HI.

I didn't see a question in there. Only a statement.

Assuming it's related to having "nothing to do", try a make clean first. Having "nothing to do" generally should mean that it's "done already", and you really shouldn't have to do it again (if the source changes, then it will be complied - as is in the nature of make, to only do things which need to be done).

I found the problem
replace:

DerelictAL : $(LIBNAME)

$(LIBNAME) : IMPORTS=-Iderelict
$(LIBNAME) : $(OBJECTS)
	$(make-lib)

by:

DerelictAL : $(LIB_PRE)DerelictAL.$(LIB_EXT)

$(LIB_PRE)DerelictAL.$(LIB_EXT) : IMPORTS=-Iderelict
$(LIB_PRE)DerelictAL.$(LIB_EXT) : $(OBJECTS)