strace/Makefile

78 lines
2.5 KiB
Makefile

PACKAGE = strace
VERSION = 0.0.0
SUBDIRS = src
RM = rm -f
LN = ln -f
TAR = tar
TGZEXT = .tar.gz
MKDIR = mkdir -m 0755 -p
all: subdirs
subdirs:
@for i in $(SUBDIRS); do (cd "$$i" && \
if [ -n "$(OBJDIR)" ]; then \
([ -d "$(OBJDIR)$$i" ] || $(MKDIR) -- "$(OBJDIR)$$i") && \
$(MAKE) OBJDIR="$(OBJDIR)$$i/"; \
else $(MAKE); fi) || exit; done
clean:
@for i in $(SUBDIRS); do (cd "$$i" && \
if [ -n "$(OBJDIR)" ]; then \
$(MAKE) OBJDIR="$(OBJDIR)$$i/" clean; \
else $(MAKE) clean; fi) || exit; done
distclean:
@for i in $(SUBDIRS); do (cd "$$i" && \
if [ -n "$(OBJDIR)" ]; then \
$(MAKE) OBJDIR="$(OBJDIR)$$i/" distclean; \
else $(MAKE) distclean; fi) || exit; done
dist:
$(RM) -r -- $(OBJDIR)$(PACKAGE)-$(VERSION)
$(LN) -s -- "$$PWD" $(OBJDIR)$(PACKAGE)-$(VERSION)
@cd $(OBJDIR). && $(TAR) -czvf $(PACKAGE)-$(VERSION)$(TGZEXT) -- \
$(PACKAGE)-$(VERSION)/src/platform/freebsd.c \
$(PACKAGE)-$(VERSION)/src/platform/linux.c \
$(PACKAGE)-$(VERSION)/src/platform/netbsd.c \
$(PACKAGE)-$(VERSION)/src/strace.c \
$(PACKAGE)-$(VERSION)/src/main.c \
$(PACKAGE)-$(VERSION)/src/Makefile \
$(PACKAGE)-$(VERSION)/src/platform.h \
$(PACKAGE)-$(VERSION)/src/platform/freebsd.h \
$(PACKAGE)-$(VERSION)/src/platform/linux.h \
$(PACKAGE)-$(VERSION)/src/platform/netbsd.h \
$(PACKAGE)-$(VERSION)/src/strace.h \
$(PACKAGE)-$(VERSION)/src/project.conf \
$(PACKAGE)-$(VERSION)/Makefile \
$(PACKAGE)-$(VERSION)/COPYING \
$(PACKAGE)-$(VERSION)/config.h \
$(PACKAGE)-$(VERSION)/project.conf
$(RM) -- $(OBJDIR)$(PACKAGE)-$(VERSION)
distcheck: dist
$(TAR) -xzvf $(OBJDIR)$(PACKAGE)-$(VERSION)$(TGZEXT)
$(MKDIR) -- $(PACKAGE)-$(VERSION)/objdir
$(MKDIR) -- $(PACKAGE)-$(VERSION)/destdir
cd "$(PACKAGE)-$(VERSION)" && $(MAKE) OBJDIR="$$PWD/objdir/"
cd "$(PACKAGE)-$(VERSION)" && $(MAKE) OBJDIR="$$PWD/objdir/" DESTDIR="$$PWD/destdir" install
cd "$(PACKAGE)-$(VERSION)" && $(MAKE) OBJDIR="$$PWD/objdir/" DESTDIR="$$PWD/destdir" uninstall
cd "$(PACKAGE)-$(VERSION)" && $(MAKE) OBJDIR="$$PWD/objdir/" distclean
cd "$(PACKAGE)-$(VERSION)" && $(MAKE) dist
$(RM) -r -- $(PACKAGE)-$(VERSION)
install:
@for i in $(SUBDIRS); do (cd "$$i" && \
if [ -n "$(OBJDIR)" ]; then \
$(MAKE) OBJDIR="$(OBJDIR)$$i/" install; \
else $(MAKE) install; fi) || exit; done
uninstall:
@for i in $(SUBDIRS); do (cd "$$i" && \
if [ -n "$(OBJDIR)" ]; then \
$(MAKE) OBJDIR="$(OBJDIR)$$i/" uninstall; \
else $(MAKE) uninstall; fi) || exit; done
.PHONY: all subdirs clean distclean dist distcheck install uninstall