1#
2#
3#
4
5VERSION         = @VERSION@
6VERSIONHI       = @VERSIONHI@
7VERSIONLO       = @VERSIONLO@
8VERSIONP        = @VERSIONP@
9
10SHELL           = /bin/sh
11CC              = @CC@
12CPP             = @CPP@
13INSTALL         = @INSTALL@
14STRIP           = @STRIP@
15MAKEDEP         = @MAKEDEP@
16
17top_builddir    = @top_builddir@
18top_srcdir      = @top_srcdir@
19
20srcdir          = @srcdir@
21prefix          = @prefix@
22exec_prefix     = @exec_prefix@
23bindir          = @bindir@
24libdir          = @libdir@
25datadir         = @datadir@
26datarootdir     = @datarootdir@
27includedir      = @includedir@
28mandir          = @mandir@
29man1dir         = $(mandir)/man1
30man2dir         = $(mandir)/man2
31infodir         = @info@
32
33EXEEXT          = @EXEEXT@
34
35VPATH           = @srcdir@
36
37CPPFLAGS        = @CPPFLAGS@ -DSDCDB -DNOICE -DINDEXLIB -I. -I$(srcdir) -I$(srcdir)/../asxxsrc -I$(srcdir)/../../support/util
38CFLAGS          = @CFLAGS@ @WALL_FLAG@ $(CPPFLAGS)
39LDFLAGS         = @LDFLAGS@
40LIBS            = -lm
41
42OBJDIR = obj
43
44UTILLIB = $(srcdir)/../../support/util
45UTILSRC = dbuf.c dbuf_string.c
46UTILLIBOBJS = $(UTILSRC:%.c=$(OBJDIR)/%.o)
47
48ASXXLIB = $(srcdir)/../asxxsrc
49ASXXLIBSRC = asdbg.c asdata.c asexpr.c aslex.c aslist.c asmain.c asout.c assubr.c assym.c asmcro.c sdas.c strcmpi.c
50ASXXLIBOBJS = $(ASXXLIBSRC:%.c=$(OBJDIR)/%.o)
51
52SRC = rabpst.c rabmch.c rabadr.c
53OBJS = $(SRC:%.c=$(OBJDIR)/%.o)
54
55ASSOURCES = $(SRC) $(ASXXLIBSRC:%.c=$(ASXXLIB)/%.c) $(UTILSRC:%.c=$(UTILLIB)/%.c)
56
57ASOBJECTS = $(OBJS) $(ASXXLIBOBJS) $(UTILLIBOBJS)
58
59ASX = $(top_builddir)/bin/sdasrab$(EXEEXT)
60#DEST = $(DESTDIR)$(bindir)/sdasrab$(EXEEXT)
61DEST = sdasrab
62DESTPATH = $(DESTDIR)$(bindir)/
63
64transform       = @program_transform_name@
65
66# Compiling entire program or any subproject
67# ------------------------------------------
68all: checkconf $(ASX)
69
70$(ASX): $(ASOBJECTS)
71	$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(ASOBJECTS) $(LIBS)
72
73# Compiling and installing everything and running test
74# ----------------------------------------------------
75install: all installdirs
76	$(INSTALL) $(ASX) $(DESTPATH)`echo $(DEST)|sed '$(transform)'`$(EXEEXT)
77	$(STRIP) $(DESTPATH)`echo $(DEST)|sed '$(transform)'`$(EXEEXT)
78
79# Deleting all the installed files
80# --------------------------------
81uninstall:
82	rm -f $(DESTPATH)`echo $(DEST)|sed '$(transform)'`$(EXEEXT)
83
84
85# Performing self-test
86# --------------------
87check:
88
89
90# Performing installation test
91# ----------------------------
92installcheck:
93
94
95# Creating installation directories
96# ---------------------------------
97installdirs:
98	$(INSTALL) -d $(DESTDIR)$(bindir)
99
100
101# Creating dependencies
102# ---------------------
103dep: Makefile.dep
104
105Makefile.dep: $(ASSOURCES) $(srcdir)/*.h
106	$(MAKEDEP) $(CPPFLAGS) $(filter %.c,$^) >Makefile.dep
107
108ifeq "$(findstring $(MAKECMDGOALS),uninstall check installcheck installdirs \
109                                   clean distclean mostlyclean realclean)" ""
110  -include Makefile.dep
111endif
112include $(srcdir)/clean.mk
113
114# My rules
115# --------
116$(OBJDIR)/.stamp:
117	mkdir -p $(OBJDIR)
118	touch $(OBJDIR)/.stamp
119
120$(OBJDIR)/%.o: %.c $(OBJDIR)/.stamp
121	$(CC) -c $(CFLAGS) -o $@ $<
122
123$(OBJDIR)/%.o: $(ASXXLIB)/%.c $(OBJDIR)/.stamp
124	$(CC) -c $(CFLAGS) -o $@ $<
125
126$(OBJDIR)/%.o: $(UTILLIB)/%.c $(OBJDIR)/.stamp
127	$(CC) -c $(CFLAGS) -o $@ $<
128
129
130# Remaking configuration
131# ----------------------
132checkconf:
133	@if [ -f $(top_builddir)/devel ]; then\
134          $(MAKE) -f ../conf.mk srcdir="$(srcdir)" top_builddir="$(top_builddir)" freshconf;\
135        fi
136
137# End of Makefile
138