cd $tmp/goredo-$release
git checkout v$release
-redo-ifchange module-name VERSION
-mod_name=`cat module-name`
+redo-ifchange VERSION
########################################################################
cd doc
perl -i -p -e "s/.verbatiminclude .*PUBKEY.asc/Look in PUBKEY.asc file./" install.texi
mkinfo --output INSTALL $texi
+cat > $texi <<EOF
+\input texinfo
+@documentencoding UTF-8
+@settitle THANKS
+`cat thanks.texi`
+@bye
+EOF
+mkinfo --output THANKS $texi
+
rm $texi
redo goredo.info
-mv goredo.info NEWS INSTALL ..
+mv goredo.info INSTALL NEWS THANKS ..
cd ..
########################################################################
-mkdir -p src/$mod_name
-mv *.go go.* src/$mod_name
-
-mods="
-go.cypherpunks.ru/recfile
-go.cypherpunks.ru/tai64n
-golang.org/x/sys
-golang.org/x/term
-lukechampine.com/blake3
-"
-
-for mod in $mods; do
- mod_path=$(sed -n "s# // indirect## ; s#^ \($mod\) \(.*\)\$#\1@\2#p" src/$mod_name/go.mod)
- [ -n "$mod_path" ]
- mkdir -p src/$mod
- ( cd $GOPATH/pkg/mod/$mod_path ; tar cf - --exclude ".git*" * ) | tar xfC - src/$mod
- chmod -R +w src/$mod
-done
-
-for mod in github.com/klauspost/cpuid; do
- mod_path=$(sed -n "s#^\($mod\) \(.*\) h1:.*\$#\1@\2#p" src/$mod_name/go.sum | sed /go.mod/d | sort -n -r | sed -n 1p)
- [ -n "$mod_path" ]
- mkdir -p src/$mod
- ( cd $GOPATH/pkg/mod/$mod_path ; tar cf - --exclude ".git*" * ) | tar xfC - src/$mod
- chmod -R +w src/$mod
-done
-
-cat > $tmp/includes <<EOF
-golang.org/x/sys/AUTHORS
-golang.org/x/sys/CONTRIBUTORS
-golang.org/x/sys/go.mod
-golang.org/x/sys/internal/unsafeheader
-golang.org/x/sys/LICENSE
-golang.org/x/sys/PATENTS
-golang.org/x/sys/README.md
-golang.org/x/sys/unix
-golang.org/x/term
-EOF
-tar cfCI - src $tmp/includes | tar xfC - $tmp
-rm -fr src/golang.org $tmp/includes
-mv $tmp/golang.org src
-
-rm -r src/golang.org/x/sys/unix/linux
-rm -r src/github.com/klauspost/cpuid/private src/github.com/klauspost/cpuid/testdata
+mkdir -p src
+mv *.go go.* src
+cd src
+go mod vendor
+modvendor -v -copy="**/*_test.go **/private-gen.go **/main.go **/vectors.json **/gen.go"
+rm -rf vendor/golang.org/x/sys/plan9 vendor/golang.org/x/sys/windows
+find vendor/golang.org/x/sys -name "*_test.go" -delete
+find . \( -name .gitignore -o -name .travis.yml \) -delete
+cd ..
########################################################################
-rm -rf *.texi .redo .git .gitignore doc makedist.sh module-name* VERSION.do
-find . -type d -exec chmod 755 {} \;
-find . -type f -exec chmod 644 {} \;
+rm -rf *.texi .redo .git .gitignore doc makedist.sh VERSION.do
+find . -type d -exec chmod 755 {} +
+find . -type f -exec chmod 644 {} +
+find t/redo-sh.tests -name test -exec chmod +x {} +
+find t -name wrapper.rc -exec chmod +x {} +
+chmod +x t/apenwarr/sleep t/goredo-*.t
cd ..
tar cvf goredo-"$release".tar --uid=0 --gid=0 --numeric-owner goredo-"$release"
zstd -19 -v goredo-"$release".tar
-gpg --detach-sign --sign --local-user 3A528DDE952C7E93 goredo-"$release".tar.zst
-
tarball=goredo-"$release".tar.zst
+gpg --detach-sign --sign --local-user 3A528DDE952C7E93 "$tarball"
+gpg --enarmor < "$tarball".sig |
+ sed "/^Comment:/d ; s/ARMORED FILE/SIGNATURE/" > "$tarball".asc
+meta4-create -file "$tarball" -mtime "$tarball" -sig "$tarball".asc \
+ http://www.goredo.cypherpunks.ru/download/"$tarball" > "$tarball".meta4
+
size=$(( $(stat -f %z $tarball) / 1024 ))
hash=$(gpg --print-md SHA256 < $tarball)
release_date=$(date "+%Y-%m-%d")
+release_underscored=`echo $release | tr . _`
cat <<EOF
An entry for documentation:
-@item @ref{Release $release, $release} @tab $release_date @tab $size KiB
-@tab @url{download/goredo-${release}.tar.zst, link} @url{download/goredo-${release}.tar.zst.sig, sign}
+@item @ref{Release $release_underscored, $release} @tab $release_date @tab $size KiB
+@tab
+ @url{download/$tarball.meta4, meta4}
+ @url{download/$tarball, link}
+ @url{download/$tarball.sig, sig}
@tab @code{$hash}
EOF
-mv $tmp/$tarball $tmp/"$tarball".sig $cur/doc/goredo.html/download
+mv $tmp/$tarball $tmp/"$tarball".sig $tarball.meta4 $cur/doc/goredo.html/download
cat <<EOF
Subject: goredo $release release announcement
I am pleased to announce goredo $release release availability!
-goredo is redo implementation on pure Go.
+goredo is Go implementation of djb's redo,
+Makefile replacement that sucks less.
------------------------ >8 ------------------------
Fingerprint: 7531 BB84 FAF0 BF35 960C 63B9 3A52 8DDE 952C 7E93
Please send questions regarding the use of goredo, bug reports and patches
-to mailing list: https://lists.cypherpunks.ru/pipermail/goredo-devel/
+to mailing list: http://lists.cypherpunks.ru/goredo_002ddevel.html
EOF