| # Maintainer-only makefile segment. This contains things that are relevant |
| # only if you have the full copy of the GNU make sources, not a dist copy. |
| # |
| |
| # Find the glob source files... this might be dangerous, but we're maintainers! |
| # |
| globsrc := $(wildcard glob/*.c) |
| globhdr := $(wildcard glob/*.h) |
| |
| TEMPLATES = README config.ami configh.dos config.h.W32 config.h-vms |
| |
| # General rule for turning a .template into a regular file. |
| # |
| $(TEMPLATES) : % : %.template configure.in |
| rm -f $@ |
| sed -e 's@%VERSION%@$(VERSION)@' \ |
| -e 's@%PACKAGE%@$(PACKAGE)@' \ |
| $< > $@ |
| chmod a-w $@ |
| |
| # Construct Makefile.DOS |
| # |
| Makefile.DOS: Makefile.DOS.template Makefile.am configure.in |
| rm -f $@ |
| sed -e 's@%VERSION%@$(VERSION)@' \ |
| -e 's@%PROGRAMS%@$(bin_PROGRAMS)@' \ |
| -e 's@%SOURCES%@$(filter-out remote-%,$(make_SOURCES)) remote-$$(REMOTE).c@' \ |
| -e 's@%OBJECTS%@$(filter-out remote-%,$(make_OBJECTS)) remote-$$(REMOTE).o@' \ |
| -e 's@%GLOB_SOURCES%@$(globsrc) $(globhdr)@' \ |
| -e 's@%GLOB_OBJECTS%@$(globsrc:glob/%.c=%.o)@' \ |
| $< > $@ |
| chmod a-w $@ |
| |
| # Construct build.sh.in |
| # |
| build.sh.in: build.template Makefile.am |
| rm -f $@ |
| sed -e 's@%objs%@$(filter-out remote-%, $(make_OBJECTS)\ |
| $(patsubst %.c,%.o,$(globsrc)))@' \ |
| $< > $@ |
| chmod a-w+x $@ |
| |
| # We clean everything here. The GNU standards for makefile conventions say |
| # you shouldn't remove configure, etc., but this makefile is only available |
| # in a full development distribution, so they'll only be removed then. |
| # |
| MAINTAINERCLEANFILES = $(TEMPLATES) Makefile.DOS build.sh.in \ |
| configure Makefile.in stamp-h.in |
| |
| # Put the alpha distribution files up for anonymous FTP. |
| # |
| ALPHA := ~ftp/gnu |
| TARFILE := $(distdir).tar.gz |
| |
| .PHONY: alpha |
| alpha: $(ALPHA) $(TARFILE) |
| @rm -f $(ALPHA)/$(TARFILE) |
| cp -p $(TARFILE) $(ALPHA) |