X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=as%2Fz80%2FMakefile;h=beb428f466592b7ebfcaeb1030c62860fc1ab5ae;hb=72b7e8dadd92279596c0f56649775fc056acf449;hp=9ea2069dd37dc09aeee5d8908d502cb311ae271f;hpb=5df1b9a579235d42fcec8a8884808334ed99a246;p=fw%2Fsdcc diff --git a/as/z80/Makefile b/as/z80/Makefile index 9ea2069d..beb428f4 100644 --- a/as/z80/Makefile +++ b/as/z80/Makefile @@ -14,7 +14,7 @@ SRC = asdata.c asexpr.c aslex.c aslist.c asmain.c asout.c \ OBJS = $(SRC:%.c=$(OBJDIR)/%.o) SLIBOBJS = $(SLIBSRC:%.c=$(OBJDIR)/%.o) -BINS = $(BUILDDIR)as$(EXT) +BINS = $(BUILDDIR)as$(EXT)$(EXEEXT) CFLAGS += $(CPPFLAGS) $(OPTS) -I. -DINDEXLIB -DMLH_MAP -DUNIX -DSDK CFLAGS += -funsigned-char @@ -22,7 +22,7 @@ CFLAGS += -I$(SLIB) LDFLAGS += -lm $(EXTRALIBS) -all: $(OBJDIR) dep $(BINS) +all: dep $(BINS) dep: Makefile.dep @@ -31,17 +31,24 @@ Makefile.dep: $(SRC) *.h include Makefile.dep -$(OBJDIR): +# We need a '.stamp'-file in $(OBJDIR), because the time stamp +# of $(OBJDIR) itself is always updated, when a file in $(OBJDIR) +# is updated. A rule like +# $(OBJDIR)/anyfile: $(OBJDIR) +# will always force a remake (at least on Linux ext2). + +$(OBJDIR)/.stamp: mkdir -p $(OBJDIR) + touch $(OBJDIR)/.stamp $(BINS): $(OBJS) $(SLIBOBJS) $(CC) -o $(BINS) $(OBJS) $(SLIBOBJS) $(LDFLAGS) -$(OBJDIR)/%.o: %.c +$(OBJDIR)/%.o: %.c $(OBJDIR)/.stamp $(CC) -c $(CFLAGS) -o $@ $< -$(OBJDIR)/%.o: $(SLIB)/%.c +$(OBJDIR)/%.o: $(SLIB)/%.c $(OBJDIR)/.stamp $(CC) -c $(CFLAGS) -o $@ $< _as-z80: