DISTNAME= $(PACKAGE_NAME)-$(VERSION)
+DISTCLEAN_FILES= config.h config.log mk/defs.mk
+
dist:
@git archive --format=tar.gz --prefix=$(DISTNAME)/ -o $(DISTNAME).tar.gz HEAD
@git archive --format=tar --prefix=$(DISTNAME)/ HEAD | xz > $(DISTNAME).tar.xz
.c.pico:
$(CC) -Wall -Wextra -std=gnu17 -D_GNU_SOURCE=1 -MT $@ -MD -MP -MF $*.Tpico -o $@ -c $(CFLAGS) $(LOCAL_CFLAGS) $(SHOBJ_CFLAGS) $<
mv $*.Tpico $*.Ppico
+
+clean: clean-files
+
+clean-files:
+ rm -f $(CLEAN_FILES)
+
+distclean: distclean-files
+
+distclean-files:
+ rm -r $(DISTCLEAN_FILES)
check:
+DISTCLEAN_FILES= config.h config.log mk/defs.mk
+
distclean: clean
- rm -f config.h config.log mk/defs.mk
PROGNAME= $(PROG)$(EXEEXT)
+CLEAN_FILES+= $(PROGNAME) $(OBJS) $(DEPFILES)
+
all: $(PROGNAME)
$(PROGNAME): $(OBJS)
$(CC) -o $@ $(OBJS) $(LDFLAGS) $(LOCAL_LDFLAGS)
-clean:
- rm -f $(PROGNAME) $(OBJS) $(DEPFILES)
-
install: $(PROGNAME)
install -d -m 755 $(DESTDIR)$(bindir)
install -m 755 $(PROGNAME) $(DESTDIR)$(bindir)/
include $(MK)/common.mk
+CLEAN_FILES+= lib$(LIB).a lib$(LIB)_pic.a $(OBJS) $(SHOBJS) $(DEPFILES)
+
all: lib$(LIB).a lib$(LIB)_pic.a
lib$(LIB).a: $(OBJS)
$(AR) cr $@ $(SHOBJS)
$(RANLIB) $@
-clean:
- rm -f lib$(LIB).a lib$(LIB)_pic.a $(OBJS) $(SHOBJS) $(DEPFILES)
+install: install-lib
-install: lib$(LIB).a
+install-lib: lib$(LIB).a
install -d -m 755 $(DESTDIR)$(libdir)
install -m 644 lib$(LIB).a $(DESTDIR)$(libdir)/
TESTS_SHELL= $(TESTS_SH:.sh=)
+CLEAN_FILES= *.o *.Po fakesmtpd mlmmj $(TESTS_SHELL)
+
all: mlmmj fakesmtpd $(TESTS_SHELL)
mlmmj: mlmmj.o mlmmj_tests.o $(top_builddir)/src/libmlmmj.a
kyua --config='$(top_builddir)/kyua.conf' test \
--kyuafile='$(top_srcdir)/Kyuafile' --build-root='$(top_builddir)'
-clean:
- rm -f mlmmj fakesmtpd *.o *.Po $(TESTS_SHELL)
-
install:
.sh: