diff options
author | Joel Rosdahl <joel@rosdahl.net> | 2010-02-26 21:24:09 +0100 |
---|---|---|
committer | Joel Rosdahl <joel@rosdahl.net> | 2010-02-26 21:24:09 +0100 |
commit | 1af0bd848651c62cdf72eea9918f5d57402de838 (patch) | |
tree | d89ebafda73e4fba6b6ae8f0e23c65a53daa279f /dev.mk.in | |
parent | f9cf675f44d23330d5673c689dade222a3aa283c (diff) | |
download | ccache-1af0bd848651c62cdf72eea9918f5d57402de838.tar.gz |
Portability: don't require GNU make
The part of Makefile.in that requires GNU make has been split into dev.mk.in,
and the configure script has learned a new --enable-dev option that makes
Makefile include dev.mk. The configure script doesn't check for GNU make
anymore. There is also a new configure-dev convenience script that runs
configure with --enable-dev.
Diffstat (limited to 'dev.mk.in')
-rw-r--r-- | dev.mk.in | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/dev.mk.in b/dev.mk.in new file mode 100644 index 00000000..7533bafb --- /dev/null +++ b/dev.mk.in @@ -0,0 +1,54 @@ +CPPFLAGS += -MD -MP -MF .deps/$(subst .._,,$(subst /,_,$<)).d +version = $(shell sed -n 's/^\#define CCACHE_VERSION "\(.*\)"/\1/p' \ + $(srcdir)/ccache.h) +dist_dir = ccache-$(version) +dist_archive_tar_bz2 = ccache-$(version).tar.bz2 +dist_archive_tar_gz = ccache-$(version).tar.gz + +source_dist_files = \ + $(sources) $(headers) zlib/*.c zlib/*.h \ + config.h.in configure configure-dev dev.mk.in install-sh Makefile.in \ + test.sh COPYING INSTALL NEWS README +built_dist_files = ccache.1 +dist_files = \ + $(addprefix $(srcdir)/, $(source_dist_files)) \ + $(built_dist_files) + +.PHONY: dist +dist: $(dist_archive_tar_bz2) $(dist_archive_tar_gz) + +define create_dist_archive + tmpdir=$$(mktemp -d) && \ + dir=$$tmpdir/$(dist_dir) && \ + mkdir $$dir && \ + (cd $(srcdir) && \ + cp -r --parents $(source_dist_files) $$dir) && \ + cp $(built_dist_files) $$dir && \ + (cd $$tmpdir && \ + tar $(1) $(CURDIR)/$@ $(dist_dir)) && \ + rm -rf $$tmpdir +endef + +$(dist_archive_tar_bz2): $(dist_files) + $(call create_dist_archive, cjf) + +$(dist_archive_tar_gz): $(dist_files) + $(call create_dist_archive, czf) + +.PHONY: distcheck +distcheck: $(dist_archive_tar_bz2) + tmpdir=$$(mktemp -d) && \ + (cd $$tmpdir && \ + tar xjf $(CURDIR)/$(dist_archive_tar_bz2) && \ + mkdir -p $(dist_dir)/build && \ + cd $(dist_dir)/build && \ + ../configure --prefix=$$tmpdir/root && \ + $(MAKE) install && \ + $(MAKE) installcheck) && \ + rm -rf $$tmpdir + +.PHONY: check-syntax +check-syntax: + $(CC) @CPPFLAGS@ -I. $(CFLAGS) -S -o /dev/null $(CHK_SOURCES) + +-include $(all_sources:%=.deps/%.d) |