diff --git a/cpu/6502/Makefile.6502 b/cpu/6502/Makefile.6502
index 12846ed68..e42135af3 100644
--- a/cpu/6502/Makefile.6502
+++ b/cpu/6502/Makefile.6502
@@ -29,13 +29,9 @@
#
# Author: Oliver Schmidt
#
-# $Id: Makefile.6502,v 1.5 2007/04/21 13:23:47 oliverschmidt Exp $
+# $Id: Makefile.6502,v 1.6 2007/04/21 15:04:23 oliverschmidt Exp $
#
-#######################
-# General Definitions #
-#######################
-
ifndef CONTIKI
${error CONTIKI not defined! You must specify where CONTIKI resides!}
endif
@@ -52,27 +48,37 @@ ifndef LD65_OBJ
${error LD65_OBJ not defined! You must specify where the cc65 objects reside!}
endif
+CONTIKI_TARGET_DIRS = .
+CONTIKI_CPU_DIRS = . net sys
+CONTIKI_TARGET_MAIN = ${addprefix $(OBJECTDIR)/,contiki-main.o}
+
+CONTIKI_TARGET_SOURCEFILES = contiki-main.c
+CONTIKI_CPU_SOURCEFILES = lc-asm.S uip_arch.c
+
+CONTIKI_SOURCEFILES += $(CONTIKI_CPU_SOURCEFILES) $(CONTIKI_TARGET_SOURCEFILES)
+
+TARGET_STARTFILES = $(TARGET).o --start-group
+TARGET_LIBFILES = $(TARGET).lib --end-group
+
+### Compiler definitions
+
AS = ca65
CC = cc65
LD = ld65
AR = ar65
AFLAGS = -t $(TARGET)
-CFLAGS += -t $(TARGET) -Or $(INCLUDES)
+CFLAGS += -t $(TARGET) -Or ${addprefix -I,$(SOURCEDIRS)}
LDFLAGS = -C $(CONTIKI)/platform/$(TARGET)/linker.cfg -m contiki-$(TARGET).map
AROPTS = a
-CONTIKI_TARGET_MAIN = $(OBJECTDIR)/contiki-main.o
-CONTIKI_OBJECTFILES += $(OBJECTDIR)/contiki-main.o $(OBJECTDIR)/lc-asm.o $(OBJECTDIR)/uip_arch.o
-TARGET_STARTFILES = $(TARGET).o --start-group
-TARGET_LIBFILES = $(TARGET).lib --end-group
+### Compilation rules
-#########
-# Rules #
-#########
+.SUFFIXES:
-$(OBJECTDIR)/%.o: %.S
- @$(AS) $(AFLAGS) $< -o $@
+CUSTOM_RULE_C_TO_OBJECTDIR_D = 1
+# No explicit dependency file generation necessary since it is done
+# as compilation side effect using the --create-dep compiler option
CUSTOM_RULE_C_TO_OBJECTDIR_O = 1
$(OBJECTDIR)/%.o: %.c
@@ -87,16 +93,18 @@ CUSTOM_RULE_C_TO_CO = 1
@$(AS) $(AFLAGS) $(@:.co=.s) -o $@
@rm -f $(@:.co=.s)
-CUSTOM_RULE_C_TO_OBJECTDIR_D = 1
-# No explicit dependency file generation necessary since it is done
-# as compilation side effect using the --create-dep compiler option
+$(OBJECTDIR)/%.o: %.S
+ $(AS) $(AFLAGS) $< -o $@
-#################
-# Path Settings #
-#################
+### Setup directory search path for source files
-INCLUDES = -I$(CONTIKI)/platform/$(TARGET) -I$(CONTIKI_CPU) -I$(CONTIKI)/core ${addprefix -I,$(APPDIRS)}
+CONTIKI_TARGET_DIRS_CONCAT = ${addprefix $(CONTIKI)/platform/$(TARGET)/, \
+ $(CONTIKI_TARGET_DIRS)}
+CONTIKI_CPU_DIRS_CONCAT = ${addprefix $(CONTIKI)/cpu/6502/, \
+ $(CONTIKI_CPU_DIRS)}
+SOURCEDIRS = $(PROJECTDIRS) \
+ $(CONTIKI_TARGET_DIRS_CONCAT) $(CONTIKI_CPU_DIRS_CONCAT) \
+ $(CONTIKIDIRS) $(APPDIRS) $(APP_DIRS)
-vpath %.c $(CONTIKI)/platform/$(TARGET) $(CONTIKI_CPU)/net $(CONTIKIDIRS) $(APPDIRS)
-
-vpath %.S $(CONTIKI_CPU)/sys
+vpath %.c $(SOURCEDIRS)
+vpath %.S $(SOURCEDIRS)