mirror of
https://git.notmuchmail.org/git/notmuch
synced 2024-12-22 09:24:54 +01:00
3e4a9d60a9
Such as: mkdir build cd build ../configure make This is implemented by having the configure script set a srcdir variable in Makefile.config, and then sprinkling $(srcdir) into various make rules. We also use vpath directives to convince GNU make to find the source files from the original source directory.
34 lines
1.3 KiB
Makefile
34 lines
1.3 KiB
Makefile
# We want the all target to be the implicit target (if no target is
|
|
# given explicitly on the command line) so mention it first.
|
|
all:
|
|
|
|
# List all subdirectories here. Each contains its own Makefile.local
|
|
subdirs = compat completion emacs lib test
|
|
|
|
# We make all targets depend on the Makefiles themselves.
|
|
global_deps = Makefile Makefile.config Makefile.local \
|
|
$(subdirs:%=%/Makefile) $(subdirs:%=%/Makefile.local)
|
|
|
|
# Sub-directory Makefile.local fragments can append to these variables
|
|
# to have directory-specific cflags as necessary.
|
|
|
|
extra_cflags :=
|
|
extra_cxxflags :=
|
|
|
|
# Get settings from the output of configure by running it to generate
|
|
# Makefile.config if it doesn't exist yet. And add Makefile.config to
|
|
# our global dependency list.
|
|
include Makefile.config
|
|
Makefile.config: $(srcdir)/configure
|
|
@echo ""
|
|
@echo "Note: Calling ./configure with no command-line arguments. This is often fine,"
|
|
@echo " but if you want to specify any arguments (such as an alternate prefix"
|
|
@echo " into which to install), call ./configure explicitly and then make again."
|
|
@echo " See \"./configure --help\" for more details."
|
|
@echo ""
|
|
./configure
|
|
|
|
# Finally, include all of the Makefile.local fragments where all the
|
|
# real work is done.
|
|
|
|
include $(subdirs:%=%/Makefile.local) Makefile.local
|