From: David Bremner Date: Mon, 18 Jul 2011 01:18:58 +0000 (-0300) Subject: Merge commit '0.6.1' X-Git-Tag: 0.7_rc1~5 X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=commitdiff_plain;h=a900ddaba661d693764d1a5f58f8b946bb788c4a;hp=8b10e4d56980037e388bf07c27899e34386c28f6 Merge commit '0.6.1' Conflicts: lib/Makefile.local The conflicts are from three kinds of commits not merged into release: - typo fixes - removal of debug output - fix for CLEAN rule That were never merged into the release branch. --- diff --git a/Makefile.local b/Makefile.local index 8a8832da..33fdcc93 100644 --- a/Makefile.local +++ b/Makefile.local @@ -25,6 +25,7 @@ RELEASE_HOST=notmuchmail.org RELEASE_DIR=/srv/notmuchmail.org/www/releases RELEASE_URL=http://notmuchmail.org/releases TAR_FILE=$(PACKAGE)-$(VERSION).tar.gz +DEB_TAR_FILE=$(PACKAGE)_$(VERSION).orig.tar.gz SHA1_FILE=$(TAR_FILE).sha1 GPG_FILE=$(SHA1_FILE).asc @@ -60,7 +61,13 @@ endif endif $(TAR_FILE): - git archive --format=tar --prefix=$(PACKAGE)-$(VERSION)/ HEAD > $(TAR_FILE).tmp + if git tag -v $(VERSION) >/dev/null 2>&1; then \ + ref=$(VERSION); \ + else \ + ref="HEAD" ; \ + echo "Warning: No signed tag for $(VERSION)"; \ + fi ; \ + git archive --format=tar --prefix=$(PACKAGE)-$(VERSION)/ $$ref > $(TAR_FILE).tmp echo $(VERSION) > version.tmp tar --append -f $(TAR_FILE).tmp --transform s_^_$(PACKAGE)-$(VERSION)/_ --transform 's_.tmp$$__' version.tmp rm version.tmp @@ -87,21 +94,21 @@ dist: $(TAR_FILE) .PHONY: release release: verify-source-tree-and-version $(MAKE) VERSION=$(VERSION) verify-newer + $(MAKE) VERSION=$(VERSION) clean $(MAKE) VERSION=$(VERSION) test - rm -rf ./debian-build - git-buildpackage - cp debian-build/notmuch_$(VERSION).tar.gz notmuch-$(VERSION).tar.gz + git tag -s -m "$(PACKAGE) $(VERSION) release" $(VERSION) $(MAKE) VERSION=$(VERSION) $(GPG_FILE) - scp $(TAR_FILE) $(SHA1_FILE) $(GPG_FILE) $(RELEASE_HOST):$(RELEASE_DIR) - ssh $(RELEASE_HOST) "rm -f $(RELEASE_DIR)/LATEST-$(PACKAGE)-[0-9]* && ln -s $(TAR_FILE) $(RELEASE_DIR)/LATEST-$(PACKAGE)-$(VERSION)" + ln -sf $(TAR_FILE) $(DEB_TAR_FILE) + pristine-tar commit $(DEB_TAR_FILE) $(VERSION) + git tag -s -m "$(PACKAGE) Debian $(VERSION)-1 upload (same as $(VERSION))" debian/$(VERSION)-1 mkdir -p releases mv $(TAR_FILE) $(SHA1_FILE) $(GPG_FILE) releases - (cd debian-build; dput *.changes) - mv debian-build/* releases - rmdir debian-build - git tag -s -m "$(PACKAGE) $(VERSION) release" $(VERSION) - git push origin $(VERSION) $(MAKE) VERSION=$(VERSION) release-message > $(PACKAGE)-$(VERSION).announce +ifeq ($(REALLY_UPLOAD),yes) + git push origin $(VERSION) + cd releases && scp $(TAR_FILE) $(SHA1_FILE) $(GPG_FILE) $(RELEASE_HOST):$(RELEASE_DIR) + ssh $(RELEASE_HOST) "rm -f $(RELEASE_DIR)/LATEST-$(PACKAGE)-[0-9]* ; ln -s $(TAR_FILE) $(RELEASE_DIR)/LATEST-$(PACKAGE)-$(VERSION)" +endif @echo "Please send a release announcement using $(PACKAGE)-$(VERSION).announce as a template." .PHONY: release-message @@ -161,8 +168,8 @@ endif .PHONY: verify-version-debian verify-version-debian: verify-version-components - @echo -n "Checking that Debian package version is $(VERSION)..." - @if [ "$(VERSION)" != $$(dpkg-parsechangelog | grep ^Version | awk '{print $$2}') ] ; then \ + @echo -n "Checking that Debian package version is $(VERSION)-1..." + @if [ "$(VERSION)-1" != $$(dpkg-parsechangelog | grep ^Version | awk '{print $$2}') ] ; then \ (echo "No." && \ echo "Please edit version and debian/changelog to have consistent versions." && false) \ fi @@ -180,11 +187,16 @@ verify-version-components: .PHONY: verify-newer verify-newer: @echo -n "Checking that no $(VERSION) release already exists..." - @ssh $(RELEASE_HOST) test ! -e $(RELEASE_DIR)/$(TAR_FILE) \ - || (echo "Ouch." && echo "Found: $(RELEASE_HOST):$(RELEASE_DIR)/$(TAR_FILE)" \ - && echo "Refusing to replace an existing release." \ - && echo "Don't forget to update \"version\" as described in RELEASING before release." && false) - @echo "Good." + @wget -q -O /dev/null $(RELEASE_URL)/$(TAR_FILE) ; \ + case $$? in \ + 8) echo "Good." ;; \ + 0) echo "Ouch."; \ + echo "Found: $(RELEASE_URL)/$(TAR_FILE)"; \ + echo "Refusing to replace an existing release."; \ + echo "Don't forget to update \"version\" as described in RELEASING before release." ; \ + false ;; \ + *) echo "An unexpected error occured"; \ + false;; esac # The user has not set any verbosity, default to quiet mode and inform the # user how to enable verbose compiles. diff --git a/NEWS b/NEWS index f3fefad1..bb58d6b7 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,14 @@ +Notmuch 0.6.1 (2011-07-17) +========================== + +Bug-fix release. +---------------- + +Re-export Xapian exception typeinfo symbols. + + It turned out our aggressive symbol hiding caused problems for + people running gcc 4.4.5. + Notmuch 0.6 (2011-07-01) ======================= New, general features diff --git a/debian/README.notmuch-emacs b/debian/README.notmuch-emacs deleted file mode 100644 index 713523b4..00000000 --- a/debian/README.notmuch-emacs +++ /dev/null @@ -1,8 +0,0 @@ - -* This package currently works only with emacs 23. Users of - pre-release snapshots of emacs 24 can expect problems. - -* For help in getting started with notmuch and the emacs interface, - see /usr/share/doc/notmuch/README. - - -- David Bremner , Fri, 1 Jul 2011 11:41:26 -0300 diff --git a/debian/README.notmuch-vim b/debian/README.notmuch-vim deleted file mode 100644 index ec052eef..00000000 --- a/debian/README.notmuch-vim +++ /dev/null @@ -1,8 +0,0 @@ -notmuch for Debian -================== - -To use the vim plugin, please install it using vim-addons(1) - -See also /usr/share/doc/notmuch/README. - - -- David Bremner , Fri, 1 Jul 2011 11:34:39 -0300 diff --git a/debian/changelog b/debian/changelog index 0fad868a..37a228c4 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,14 @@ +notmuch (0.6.1-1) unstable; urgency=low + + * Properly install README.Debian in notmuch-vim (Closes: #632992). + Thanks to Jason Woofenden for the report. + * Force notmuch to depend on the same version of libnotmuch. Thanks to + Uwe Kleine-König for the patch. + * Export typeinfo for Xapian exceptions from libnotmuch. This fixes + certain mysterious uncaught exception problems. + + -- David Bremner Sun, 17 Jul 2011 10:20:42 -0300 + notmuch (0.6) unstable; urgency=low * New upstream release; see /usr/share/doc/notmuch/NEWS for diff --git a/debian/control b/debian/control index 78c9849b..03afdf44 100644 --- a/debian/control +++ b/debian/control @@ -15,7 +15,7 @@ Dm-Upload-Allowed: yes Package: notmuch Architecture: any -Depends: ${shlibs:Depends}, ${misc:Depends} +Depends: libnotmuch1 (= ${binary:Version}), ${shlibs:Depends}, ${misc:Depends} Recommends: notmuch-emacs | notmuch-vim Description: thread-based email index, search and tagging Notmuch is a system for indexing, searching, reading, and tagging diff --git a/debian/libnotmuch1.symbols b/debian/libnotmuch1.symbols index 8df6fec1..05d86e6d 100644 --- a/debian/libnotmuch1.symbols +++ b/debian/libnotmuch1.symbols @@ -70,3 +70,13 @@ libnotmuch.so.1 libnotmuch1 #MINVER# notmuch_threads_get@Base 0.3 notmuch_threads_move_to_next@Base 0.3 notmuch_threads_valid@Base 0.3 + (c++)"typeinfo for Xapian::LogicError@Base" 0.6.1 + (c++)"typeinfo for Xapian::RuntimeError@Base" 0.6.1 + (c++)"typeinfo for Xapian::DocNotFoundError@Base" 0.6.1 + (c++)"typeinfo for Xapian::InvalidArgumentError@Base" 0.6.1 + (c++)"typeinfo for Xapian::Error@Base" 0.6.1 + (c++)"typeinfo name for Xapian::LogicError@Base" 0.6.1 + (c++)"typeinfo name for Xapian::RuntimeError@Base" 0.6.1 + (c++)"typeinfo name for Xapian::DocNotFoundError@Base" 0.6.1 + (c++)"typeinfo name for Xapian::InvalidArgumentError@Base" 0.6.1 + (c++)"typeinfo name for Xapian::Error@Base" 0.6.1 diff --git a/debian/notmuch-emacs.README.Debian b/debian/notmuch-emacs.README.Debian new file mode 100644 index 00000000..713523b4 --- /dev/null +++ b/debian/notmuch-emacs.README.Debian @@ -0,0 +1,8 @@ + +* This package currently works only with emacs 23. Users of + pre-release snapshots of emacs 24 can expect problems. + +* For help in getting started with notmuch and the emacs interface, + see /usr/share/doc/notmuch/README. + + -- David Bremner , Fri, 1 Jul 2011 11:41:26 -0300 diff --git a/debian/notmuch-vim.README.Debian b/debian/notmuch-vim.README.Debian new file mode 100644 index 00000000..ec052eef --- /dev/null +++ b/debian/notmuch-vim.README.Debian @@ -0,0 +1,8 @@ +notmuch for Debian +================== + +To use the vim plugin, please install it using vim-addons(1) + +See also /usr/share/doc/notmuch/README. + + -- David Bremner , Fri, 1 Jul 2011 11:34:39 -0300 diff --git a/debian/source/format b/debian/source/format index 89ae9db8..163aaf8d 100644 --- a/debian/source/format +++ b/debian/source/format @@ -1 +1 @@ -3.0 (native) +3.0 (quilt) diff --git a/lib/Makefile.local b/lib/Makefile.local index 88d8debc..9210f0e5 100644 --- a/lib/Makefile.local +++ b/lib/Makefile.local @@ -75,9 +75,7 @@ $(dir)/$(LIBNAME): $(libnotmuch_modules) notmuch.sym $(call quiet,CXX $(CXXFLAGS)) $(libnotmuch_modules) $(FINAL_LIBNOTMUCH_LDFLAGS) $(LIBRARY_LINK_FLAG) -o $@ notmuch.sym: lib/notmuch.h - printf "{\nglobal:\n" > notmuch.sym - sed -n 's/^[[:space:]]*\(notmuch_[a-z_]*\)[[:space:]]*(.*/'"`printf "\t"`"'\1;/p' $< >> notmuch.sym - printf "local: *;\n};\n" >> notmuch.sym + sh lib/gen-version-script.sh $< $(libnotmuch_modules) > $@ $(dir)/$(SONAME): $(dir)/$(LIBNAME) ln -sf $(LIBNAME) $@ diff --git a/lib/gen-version-script.sh b/lib/gen-version-script.sh new file mode 100644 index 00000000..e753eaf5 --- /dev/null +++ b/lib/gen-version-script.sh @@ -0,0 +1,27 @@ + +# we go through a bit of work to get the unmangled names of the +# typeinfo symbols because of +# http://sourceware.org/bugzilla/show_bug.cgi?id=10326 + +if [ $# -lt 2 ]; then + echo Usage: $0 header obj1 obj2 obj3 + exit 1; +fi + +HEADER=$1 +shift + +printf '{\nglobal:\n' +nm --defined $* | awk '$3 ~ "Xapian.*Error" {print $3}' | sort | uniq | \ +while read sym; do + demangled=$(c++filt $sym) + case $demangled in + typeinfo*) + printf "\t$sym;\n" + ;; + *) + ;; + esac +done +sed -n 's/^\s*\(notmuch_[a-z_]*\)\s*(.*/\t\1;/p' $HEADER +printf "local: *;\n};\n" diff --git a/version b/version index 5a2a5806..ee6cdce3 100644 --- a/version +++ b/version @@ -1 +1 @@ -0.6 +0.6.1