+SHELL = @SHELL@
CC = @CC@
-CFLAGS = @CFLAGS@ -DDEBUG
+CFLAGS = @CFLAGS@ -I. -DDEBUG
OBJS = triostr.o trio.o trionan.o
TARGETLIB = libtrio.a
TARGETINCS = trio.h triop.h triodef.h trionan.h triostr.h
ERASE = rm -f
MKDIR = mkdir -p
GENDOC = doxygen
-
-PURIFY = purify
-PURIFYOPTIONS = -chain-length=16 -first-only=YES
+srcdir = @srcdir@
+# VPATH doesn't seem to work with /usr/xpg4/bin/make on Solaris
+# (use /usr/ccs/bin/make), and doesn't work on older Solaris make
+# such as Solaris 2.6.
+VPATH = @srcdir@
# Installation settings
INSTALL = @INSTALL@
includedir = @includedir@
libdir = @libdir@
-all: $(TARGETLIB) $(TARGET) regression
+all: $(TARGETLIB) $(TARGET)
+
+.PHONY: all check test install doc clean
+
+$(srcdir)/configure: configure.in
+ cd $(srcdir) && autoconf
-test:
+Makefile: Makefile.in config.status
+ CONFIG_COMMANDS= CONFIG_LINKS= CONFIG_HEADERS= \
+ CONFIG_FILES=Makefile ./config.status
+
+config.status: configure
+ ./config.status --recheck
+
+check: test
+test: regression
./regression
install: $(TARGETLIB)
$(MKDIR) $(libdir)
$(MKDIR) $(includedir)
$(INSTALL_DATA) $(TARGETLIB) $(libdir)/$(TARGETLIB)
- for i in $(TARGET_INCS);do \
- (set -x;$(INSTALL_DATA) $$i $(includedir)); \
+ for i in $(TARGETINCS);do \
+ (set -x;$(INSTALL_DATA) $(srcdir)/$$i $(includedir)); \
done
-pure: $(TOBJS) $(OBJS)
- $(PURIFY) $(PURIFYOPTIONS) $(CC) $(CFLAGS) $^ $(LDFLAGS)
-
regression: regression.o $(TARGETLIB)
$(CC) $(CFLAGS) regression.o $(LDFLAGS) -o $@
$(RANLIB) $(TARGETLIB)
doc::
- $(GENDOC) doc/trio.cfg
+ (cd $(srcdir) && $(GENDOC) doc/trio.cfg)
clean:
- $(ERASE) *~ core regression example $(TOBJS) $(OBJS) $(TARGET) $(TARGETLIB) example.o regression.o
+ $(ERASE) *~ core core.* regression example $(TOBJS) $(OBJS) $(TARGET) $(TARGETLIB) example.o regression.o