top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
-include $(top_builddir)Makefile.common
+include $(top_builddir)/Makefile.common
-OBJDIR = obj/$(EXT)
+OBJDIR = obj$(EXT)
-SDC = .
+UTILLIB = $(srcdir)/../../support/Util
+UTILSRC = dbuf.c dbuf_string.c
+UTILLIBOBJS = $(UTILSRC:%.c=$(OBJDIR)/%.o)
-SLIBSRC = NewAlloc.c
+ASXXLIB = $(srcdir)/../asxxsrc
+ASXXLIBSRC = strcmpi.c assym.c aslex.c asnoice.c
+ASXXLIBOBJS = $(ASXXLIBSRC:%.c=$(OBJDIR)/%.o)
-SRC = asdata.c asexpr.c aslex.c aslist.c asmain.c asout.c \
- assubr.c assym.c z80adr.c z80ext.c z80mch.c z80pst.c
+SRC = asmain.c assubr.c \
+ asexpr.c asdata.c aslist.c asout.c \
+ z80ext.c z80pst.c z80mch.c z80adr.c
+OBJS = $(SRC:%.c=$(OBJDIR)/%.o)
-OBJS = $(SRC:%.c=$(OBJDIR)/%.o)
-SLIBOBJS = $(SLIBSRC:%.c=$(OBJDIR)/%.o)
+ASSOURCES = $(SRC) $(ASXXLIBSRC:%.c=$(ASXXLIB)/%.c) $(UTILSRC:%.c=$(UTILLIB)/%.c)
-BINS = $(BUILDDIR)/as$(EXT)$(EXEEXT)
+ASOBJECTS = $(OBJS) $(ASXXLIBOBJS) $(UTILLIBOBJS)
-CFLAGS += $(CPPFLAGS) $(OPTS) -I. -DINDEXLIB -DMLH_MAP -DUNIX -DSDK
-CFLAGS += -funsigned-char
-CFLAGS += -I$(SLIB)
+BINS = $(BUILDDIR)/as$(EXT)$(EXEEXT)
-LDFLAGS += -lm $(EXTRALIBS)
+CFLAGS += $(CPPFLAGS) $(OPTS) -I. -I$(srcdir)/../../support/Util -DINDEXLIB -DMLH_MAP -DUNIX -DSDK
+CFLAGS += -funsigned-char
-all: dep $(BINS)
+LDFLAGS = @LDFLAGS@ -lm $(EXTRALIBS)
+
+all: dep $(BINS)
dep: Makefile.dep
-Makefile.dep: $(SRC) $(srcdir)/*.h
- $(CPP) $(CPPFLAGS) $(M_OR_MM) $^ > Makefile.dep
+Makefile.dep: $(ASSOURCES) $(srcdir)/*.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
# We need a '.stamp'-file in $(OBJDIR), because the time stamp
mkdir -p $(OBJDIR)
touch $(OBJDIR)/.stamp
-$(BINS): $(OBJS) $(SLIBOBJS)
- $(CC) -o $(BINS) $(OBJS) $(SLIBOBJS) $(LDFLAGS)
+$(BINS): $(ASOBJECTS)
+ $(CC) -o $(BINS) $(ASOBJECTS) $(LDFLAGS)
+$(OBJDIR)/%.o: %.c $(OBJDIR)/.stamp
+ $(CC) -c $(CFLAGS) -o $@ $<
-$(OBJDIR)/%.o: %.c $(OBJDIR)/.stamp
+$(OBJDIR)/%.o: $(ASXXLIB)/%.c $(OBJDIR)/.stamp
$(CC) -c $(CFLAGS) -o $@ $<
-$(OBJDIR)/%.o: $(SLIB)/%.c $(OBJDIR)/.stamp
+$(OBJDIR)/%.o: $(UTILLIB)/%.c $(OBJDIR)/.stamp
$(CC) -c $(CFLAGS) -o $@ $<
_as-z80: