aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar David Bremner <bremner@debian.org>2011-07-17 22:18:58 -0300
committerGravatar David Bremner <bremner@debian.org>2011-07-17 22:20:37 -0300
commita900ddaba661d693764d1a5f58f8b946bb788c4a (patch)
tree8801ce742859943f2552e328c0e14572846a7160
parent8b10e4d56980037e388bf07c27899e34386c28f6 (diff)
parent2d69aba586b52566f322a347d459503d53de6ce6 (diff)
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.
-rw-r--r--Makefile.local48
-rw-r--r--NEWS11
-rw-r--r--debian/changelog11
-rw-r--r--debian/control2
-rw-r--r--debian/libnotmuch1.symbols10
-rw-r--r--debian/notmuch-emacs.README.Debian (renamed from debian/README.notmuch-emacs)0
-rw-r--r--debian/notmuch-vim.README.Debian (renamed from debian/README.notmuch-vim)0
-rw-r--r--debian/source/format2
-rw-r--r--lib/Makefile.local4
-rw-r--r--lib/gen-version-script.sh27
-rw-r--r--version2
11 files changed, 93 insertions, 24 deletions
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/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 <bremner@debian.org> 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/README.notmuch-emacs b/debian/notmuch-emacs.README.Debian
index 713523b4..713523b4 100644
--- a/debian/README.notmuch-emacs
+++ b/debian/notmuch-emacs.README.Debian
diff --git a/debian/README.notmuch-vim b/debian/notmuch-vim.README.Debian
index ec052eef..ec052eef 100644
--- a/debian/README.notmuch-vim
+++ b/debian/notmuch-vim.README.Debian
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