EXEEXT introduces to solve Cygwin problems
[fw/sdcc] / link / z80 / Makefile
index 6c4fbeae30e956d061281086bb11ac0c29d50778..33764018401b58a54a769feb20647d5dae43f62d 100644 (file)
@@ -3,31 +3,42 @@ PRJDIR = ../..
 include $(PRJDIR)/Makefile.common
 
 OBJDIR = obj/$(EXT)
+
+SLIBSRC        = NewAlloc.c
+
 SRC    = lkarea.c lkdata.c lkeval.c lkhead.c lkihx.c lklex.c \
          lklibr.c lklist.c lkmain.c lkrloc.c lks19.c lksym.c \
          lkgb.c lkgg.c
-OBJS   = $(SRC:%.c=$(OBJDIR)/%.o)
-BINS   = $(BUILDDIR)link$(EXT)
 
-CFLAGS += $(OPTS) -DINDEXLIB -DMLH_MAP -DUNIX -DSDK
+OBJS   = $(SRC:%.c=$(OBJDIR)/%.o) 
+SLIBOBJS       = $(SLIBSRC:%.c=$(OBJDIR)/%.o) 
+
+BINS   = $(BUILDDIR)link$(EXT)$(EXEEXT)
+
+CFLAGS += $(CPPFLAGS) $(OPTS) -DINDEXLIB -DMLH_MAP -DUNIX -DSDK
 CFLAGS += -funsigned-char -DUNIX
+CFLAGS += -I$(PRJDIR)/as/$(PORT) -I$(SLIB) 
+
+LDFLAGS += -lm $(EXTRALIBS)
 
 all:   $(BINS)
 
-$(BINS): $(OBJDIR) $(OBJS)
-       $(CC) $(LDFLAGS) -o $(BINS) $(OBJS)
+$(BINS): $(OBJDIR) $(OBJS) $(SLIBOBJS)
+       $(CC) -g -o $(BINS) $(OBJS) $(SLIBOBJS) $(LDFLAGS)
 
 $(OBJDIR):
        mkdir -p $(OBJDIR)
 
 $(OBJDIR)/%.o: %.c
-       $(CC) -c $(CFLAGS) -I$(PRJDIR)/as/$(PORT) -o $@ $<
+       $(CC) -c $(CFLAGS) -o $@ $<
 
-clean:
-       rm -rf $(OBJS) $(BINS) $(OBJDIR)
+$(OBJDIR)/%.o: $(SLIB)/%.c
+       $(CC) -c $(CFLAGS) -o $@ $<
 
 _link-z80:
        $(MAKE) EXT=-z80$(E) PORT=z80
 
 _link-gbz80:
        $(MAKE) EXT=-gbz80$(E) OPTS=-DGAMEBOY PORT=z80
+
+include clean.mk