* as/link/lklib.c, as/link/lksdcclib.c, as/link/lklibr.h,
[fw/sdcc] / as / link / mcs51 / Makefile.in
index 3782c40409822ffa76c76622c8cc41258e76bafa..1935f360abb9f15224e6c1e38ccc70fbafb151ae 100644 (file)
@@ -34,18 +34,31 @@ EXEEXT          = @EXEEXT@
 VPATH           = @srcdir@
 
 CPPFLAGS        = @CPPFLAGS@ -I.. -I$(srcdir)/..
-CFLAGS          = @CFLAGS@ -Wall -DINDEXLIB
+CFLAGS          = @CFLAGS@ -Wall -DINDEXLIB -DUNIX -I.. -I$(srcdir)/..
 M_OR_MM         = @M_OR_MM@
 LDFLAGS         = @LDFLAGS@
 
-LKOBJECTS       = lkmain.o lkarea.o lkdata.o \
-                  lkrloc.o \
-                  lklibr.o lkihx.o lks19.o \
-                  lkmem.o lkaomf51.o \
-                  ../lkeval.o ../lkhead.o ../lklex.o ../lklist.o \
-                  ../lknoice.o ../lkstore.o ../lksym.o \
-                  ../../strcmpi.o
-LKSOURCES       = $(patsubst %.o,%.c,$(LKOBJECTS))
+OBJDIR = obj
+
+ASXXLIB = $(srcdir)/../../asxxsrc
+
+LKLIB = $(srcdir)/..
+
+ASXXLIBSRC = strcmpi.c
+
+LKLIBSRC = getline.c lkaomf51.c lkdata.c lkeval.c \
+           lkhead.c lklex.c lklib.c lklibr.c lklist.c \
+           lknoice.c lkrel.c lksdcclib.c lkstore.c lksym.c
+
+SRC = lkmain.c lkarea.c lkihx.c \
+      lkrloc.c lks19.c lkmem.c
+
+LKSOURCES = $(SRC) $(LKLIBSRC:%.c=$(LKLIB)/%.c) $(ASXXLIBSRC:%.c=$(ASXXLIB)/%.c)
+
+OBJS = $(SRC:%.c=$(OBJDIR)/%.o)
+LKOBJS = $(LKLIBSRC:%.c=$(OBJDIR)/%.o)
+ASXXLIBOBJS = $(ASXXLIBSRC:%.c=$(OBJDIR)/%.o)
+LKOBJECTS = $(OBJS) $(LKOBJS) $(ASXXLIBOBJS)
 
 ASLINK          = $(top_builddir)/bin/aslink$(EXEEXT)
 
@@ -90,19 +103,29 @@ installdirs:
 # ---------------------
 dep: Makefile.dep
 
-Makefile.dep: $(LKSOURCES) $(srcdir)/../*.h $(top_builddir)/*.h $(top_srcdir)/*.h
+Makefile.dep: $(LKSOURCES) $(LKLIB)/*.h $(top_builddir)/*.h
        $(CPP) $(CPPFLAGS) $(M_OR_MM) $(filter %.c,$^) >Makefile.dep
 
 ifeq "$(findstring $(MAKECMDGOALS),uninstall check installcheck installdirs \
                                    clean distclean mostlyclean realclean)" ""
-  include Makefile.dep
+  -include Makefile.dep
 endif
 include $(srcdir)/clean.mk
 
 # My rules
 # --------
-.c.o:
-       $(CC) $(CPPFLAGS) $(CFLAGS) -c -o $@ $<
+$(OBJDIR)/.stamp:
+       mkdir -p $(OBJDIR)
+       touch $(OBJDIR)/.stamp
+
+$(OBJDIR)/%.o: %.c $(OBJDIR)/.stamp
+       $(CC) -c $(CFLAGS) -o $@ $<
+
+$(OBJDIR)/%.o: $(LKLIB)/%.c $(OBJDIR)/.stamp
+       $(CC) -c $(CFLAGS) -o $@ $<
+
+$(OBJDIR)/%.o: $(ASXXLIB)/%.c $(OBJDIR)/.stamp
+       $(CC) -c $(CFLAGS) -o $@ $<
 
 
 # Remaking configuration