diff options
author | Paul Smith <psmith@gnu.org> | 2007-03-20 03:02:26 +0000 |
---|---|---|
committer | Paul Smith <psmith@gnu.org> | 2007-03-20 03:02:26 +0000 |
commit | 6ccf33cdbdfda2aea5d51e4d4991881c74d853d1 (patch) | |
tree | ce963770c6d0dc0428a6bce65d96da4b710e2831 /maintMakefile | |
parent | e4da30858037b431880263676e8f90b1f8412a38 (diff) | |
download | gunmake-6ccf33cdbdfda2aea5d51e4d4991881c74d853d1.tar.gz |
This is a major update, which switches virtually every allocated-but-not-freed
string into the strcache. As a side-effect, many more structure members and
function arguments can/should be declared const.
As mentioned in the changelog, unfortunately measurement shows that this
change does not yet reduce memory. The problem is with secondary expansion:
because of this we store all the prerequisites in the string cache twice.
First we store the prerequisite string after initial expansion but before
secondary expansion, then we store each individual file after secondary
expansion and expand_deps(). I plan to change expand_deps() to be callable
in either context (eval or snap_deps) then have non-second-expansion
targets call expand_deps() during eval, so that we only need to store that
dependency list once.
Diffstat (limited to 'maintMakefile')
-rw-r--r-- | maintMakefile | 28 |
1 files changed, 16 insertions, 12 deletions
diff --git a/maintMakefile b/maintMakefile index 4599e15..6cef280 100644 --- a/maintMakefile +++ b/maintMakefile @@ -226,7 +226,8 @@ po-check: ## ------------------------- ## # This target creates the upload artifacts. -# Sign it with my key. +# Sign it with my key. If you don't have my key/passphrase then sorry, +# you're SOL! :) GPG = gpg GPGFLAGS = -u 6338B6D4 @@ -234,21 +235,24 @@ GPGFLAGS = -u 6338B6D4 DIST_ARCHIVES_SIG = $(addsuffix .sig,$(DIST_ARCHIVES)) DIST_ARCHIVES_DIRECTIVE = $(addsuffix .directive.asc,$(DIST_ARCHIVES)) +# A simple rule to test signing, etc. .PHONY: distsign distsign: $(DIST_ARCHIVES_SIG) $(DIST_ARCHIVES_DIRECTIVE) -$(DIST_ARCHIVES_DIRECTIVE): .directive.asc - cp $< $@ - %.sig : % @echo "Signing file '$<':" - $(GPG) $(GPGFLAGS) -o $@ -b $< + $(GPG) $(GPGFLAGS) -o "$@" -b "$<" -.directive.asc: +%.directive.asc: % @echo "Creating directive file '$@':" - @echo 'directory: make' > .directive - $(GPG) $(GPGFLAGS) -o $@ --clearsign .directive - @rm -f .directive + @( \ + echo 'verstion: 1.1'; \ + echo 'directory: make'; \ + echo 'filename: $*'; \ + echo 'comment: Official upload of GNU make version $(VERSION)'; \ + ) > "$*.directive" + $(GPG) $(GPGFLAGS) -o "$@" --clearsign "$*.directive" + @rm -f "$*.directive" # Upload the artifacts @@ -258,11 +262,11 @@ gnu-url = ftp-upload.gnu.org /incoming UPLOADS = upload-alpha upload-ftp .PHONY: $(UPLOADS) $(UPLOADS): $(DIST_ARCHIVES) $(DIST_ARCHIVES_SIG) $(DIST_ARCHIVES_DIRECTIVE) - $(FTPPUT) $(gnu-url)/$(@:upload-%=%) $^ + $(FTPPUT) "$(gnu-url)/$(@:upload-%=%)" $^ -# Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 -# Free Software Foundation, Inc. +# Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, +# 2007 Free Software Foundation, Inc. # This file is part of GNU Make. # # GNU Make is free software; you can redistribute it and/or modify it under the |