-ifeq ($(SUBDIR),.)
-ALLFILES_CC := $(notdir $(wildcard $(srcdir)/*.cc) $(foreach subdir,$(SUBDIRS), $(wildcard $(srcdir)/$(subdir)/*.cc) $(wildcard $(srcdir)/$(subdir)/*/*.cc) $(wildcard $(srcdir)/$(subdir)/*/*/*.cc)))
-ALLFILES_CC := $(filter-out %.i.cc, $(ALLFILES_CC))
-ALLASMFILES_CC := $(patsubst cl_asm_@host_cpu@_%.cc,cl_asm_%.cc, $(filter cl_asm_@host_cpu@_%.cc, $(ALLFILES_CC)))
-ALLFILES_CC := $(filter-out cl_asm_%.cc, $(ALLFILES_CC))
-ALLFILES_LO := $(patsubst %.cc,%.lo,$(ALLFILES_CC))
-ALLASMFILES_LO := $(patsubst %.cc,%.lo,$(ALLASMFILES_CC))
-ALLOBJECTS_LO = $(ALLFILES_LO) $(ALLASMFILES_LO)
+ifeq (${SUBDIR},.)
+ALLFILES_CC := $(notdir $(wildcard ${srcdir}/*.cc) $(foreach subdir,${SUBDIRS}, $(wildcard ${srcdir}/${subdir}/*.cc) $(wildcard ${srcdir}/${subdir}/*/*.cc) $(wildcard ${srcdir}/${subdir}/*/*/*.cc)))
+ALLFILES_CC := $(filter-out %.i.cc, ${ALLFILES_CC})
+ALLASMFILES_CC := $(patsubst cl_asm_@host_cpu@_%.cc,cl_asm_%.cc, $(filter cl_asm_@host_cpu@_%.cc, ${ALLFILES_CC}))
+ALLFILES_CC := $(filter-out cl_asm_%.cc, ${ALLFILES_CC})
+ALLFILES_LO := $(patsubst %.cc,%.lo,${ALLFILES_CC})
+ALLASMFILES_LO := $(patsubst %.cc,%.lo,${ALLASMFILES_CC})
+ALLOBJECTS_LO = ${ALLFILES_LO} ${ALLASMFILES_LO}