src/include/mk/targets.mk

88 lines
1.8 KiB
Makefile

# targets.mk - hhl - /usr/include/mk
# Copyright 2020 Nathan Fisher <nfisher.sr@gmail.com>
#
ifeq ($(no_objdir),1)
clean_cmd ?= $(MAKE) -C $(srcdir) clean distclean
else
clean_cmd ?= rm -rf $(objdir)
endif
distclean_cmd ?= rm -rf $(objdir) $(srcdir)
ifeq ($(distext),gz)
tarflags += -xzf
endif
ifeq ($(distext),bz2)
tarflags += -xjf
endif
ifeq ($(distext),xz)
tarflags += -xJf
endif
install_cmd ?= $(MAKE) DESTDIR=$(DESTDIR) -C $(objdir) install
all: $(all_deps)
.PHONY: all
install: $(objdir)/.installed
$(info $(grn)=== $(distfullname) installed ===$(reset))
.PHONY: install
$(objdir)/.installed: $(install_deps)
$(info $(grn)=== $(distfullname) built ===$(reset))
$(info $(grn)=== Installing for $(distfullname) ===$(reset))
$(pre_install)
$(install_cmd)
$(post_install)
touch $@
$(installdirs):
install -d $@
$(objdir)/.built: $(build_deps) | $(pre_dirs)
$(info $(grn)=== Building for $(distfullname)$(reset))
$(pre_build)
$(build_cmd)
$(post_build)
touch $@
$(config_tgt): $(config_deps) | $(pre_dirs)
$(info $(grn)=== Configuring for $(distfullname) ===$(reset))
$(pre_configure)
$(config_cmd)
$(post_configure)
touch $@
$(srcdir)/.patched: $(patches) $(srcdir)/.dirstamp
$(info $(grn)=== Patching $(srcdir) ===$(reset))
for patch in $(patches) ; do cd $(srcdir) && \
patch -p1 < $(wkgdir)/$${patch} ; done
touch ${srcdir}/.patched
$(srcdir)/.dirstamp: $(distlocal) | $(tooldir)
$(info $(grn)=== Extracting $(distlocal) ===$(reset))
tar $(tarflags) $(distlocal) -C $(global_srcdir)
touch $@
ifneq ($(no_objdir),1)
$(objdir):
install -d $@
endif
$(distlocal):
$(info $(grn)=== Fetching $(distfile) ===$(reset))
$(MAKE) -C $(distdir) $(distfile)
clean:
$(info $(grn)=== Cleaning for $(distname) ===$(reset))
$(clean_cmd)
distclean: clean
$(distclean_cmd)
.PHONY: clean
.PHONY: distclean