64 lines
1.3 KiB
Plaintext
64 lines
1.3 KiB
Plaintext
|
# This file is used for common development targets that can be done with
|
||
|
# needing the cumbersome bootstrapping process.
|
||
|
#
|
||
|
# You can use it like this:
|
||
|
#
|
||
|
# make -f .makefile indent
|
||
|
#
|
||
|
# If you copy or link this file to `GNUmakefile` then you can just do:
|
||
|
#
|
||
|
# make indent
|
||
|
#
|
||
|
# When copied to `GNUmakefile`, this file is can also be used for bootstrapping
|
||
|
# Makefile targets. Since GNUmakefile is loaded before Makefile, we do the
|
||
|
# bootstrapping tasks need to get a Makefile first, then we use the Makefile to
|
||
|
# make our target.
|
||
|
|
||
|
# Remind user when they are using GNUmakefile:
|
||
|
ifeq ($(lastword $(MAKEFILE_LIST)),GNUmakefile)
|
||
|
$(info *** NOTE: GNUmakefile in use. ***)
|
||
|
endif
|
||
|
|
||
|
MAKE_TARGETS := \
|
||
|
all \
|
||
|
all-am \
|
||
|
all-recursive \
|
||
|
install \
|
||
|
test \
|
||
|
test-all \
|
||
|
test-suite \
|
||
|
|
||
|
# SOURCE_FILES := $(shell find . | grep '\.c$$')
|
||
|
SOURCE_FILES := $(shell find tests/run-test-suite | grep '\.c$$')
|
||
|
ifneq ($(shell which gindent),)
|
||
|
INDENT := gindent
|
||
|
else
|
||
|
INDENT := indent
|
||
|
endif
|
||
|
|
||
|
#
|
||
|
# Proxy make targets:
|
||
|
#
|
||
|
default: all
|
||
|
|
||
|
# Proxy these targets to the real Makefile, after bootstrapping is necessary.
|
||
|
$(MAKE_TARGETS): Makefile
|
||
|
@make -f $< $@
|
||
|
|
||
|
Makefile: Makefile.in
|
||
|
./configure
|
||
|
|
||
|
Makefile.in:
|
||
|
./bootstrap
|
||
|
|
||
|
#
|
||
|
# Development make targets:
|
||
|
#
|
||
|
indent:
|
||
|
$(INDENT) $(SOURCE_FILES)
|
||
|
|
||
|
distclean purge:
|
||
|
git clean -dxf -e GNUmakefile
|
||
|
rm -fr tests/run-test-suite
|
||
|
git worktree prune
|