From 6385b497628819ef8c92def3089ec6b4acdbc1ad Mon Sep 17 00:00:00 2001 From: Tomi Ollila Date: Tue, 6 May 2014 22:35:28 +0300 Subject: [PATCH] [PATCH] build: check .git directory existence in srcdir (for out-of-tree builds) --- af/dc20401994a0e2610984f894e13499e175cc2f | 97 +++++++++++++++++++++++ 1 file changed, 97 insertions(+) create mode 100644 af/dc20401994a0e2610984f894e13499e175cc2f diff --git a/af/dc20401994a0e2610984f894e13499e175cc2f b/af/dc20401994a0e2610984f894e13499e175cc2f new file mode 100644 index 000000000..33003e9c9 --- /dev/null +++ b/af/dc20401994a0e2610984f894e13499e175cc2f @@ -0,0 +1,97 @@ +Return-Path: +X-Original-To: notmuch@notmuchmail.org +Delivered-To: notmuch@notmuchmail.org +Received: from localhost (localhost [127.0.0.1]) + by olra.theworths.org (Postfix) with ESMTP id 3582B431FC2 + for ; Tue, 6 May 2014 12:35:40 -0700 (PDT) +X-Virus-Scanned: Debian amavisd-new at olra.theworths.org +X-Spam-Flag: NO +X-Spam-Score: 0 +X-Spam-Level: +X-Spam-Status: No, score=0 tagged_above=-999 required=5 tests=[none] + autolearn=disabled +Received: from olra.theworths.org ([127.0.0.1]) + by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024) + with ESMTP id 8Q193bFxweqs for ; + Tue, 6 May 2014 12:35:35 -0700 (PDT) +Received: from guru.guru-group.fi (guru.guru-group.fi [46.183.73.34]) + by olra.theworths.org (Postfix) with ESMTP id 5C104431FAF + for ; Tue, 6 May 2014 12:35:35 -0700 (PDT) +Received: by guru.guru-group.fi (Postfix, from userid 501) + id DFDFA1000F2; Tue, 6 May 2014 22:35:30 +0300 (EEST) +From: Tomi Ollila +To: notmuch@notmuchmail.org +Subject: [PATCH] build: check .git directory existence in srcdir (for + out-of-tree builds) +Date: Tue, 6 May 2014 22:35:28 +0300 +Message-Id: <1399404928-15471-1-git-send-email-tomi.ollila@iki.fi> +X-Mailer: git-send-email 1.8.0 +Cc: tomi.ollila@iki.fi +X-BeenThere: notmuch@notmuchmail.org +X-Mailman-Version: 2.1.13 +Precedence: list +List-Id: "Use and development of the notmuch mail system." + +List-Unsubscribe: , + +List-Archive: +List-Post: +List-Help: +List-Subscribe: , + +X-List-Received-Date: Tue, 06 May 2014 19:35:40 -0000 + +So that $(VERSION) and version.stamp uses the git-describe -based +version data instead of the content of `version' file. + +For consistency also the git commands in Makefile[.local] target +`verify-no-dirty-code' uses the git --git-dir=$srcdir/.git ... +commands (inside ifeq($(IS_GIT),yes)). Attempting to make this +target outside of the tree will fail in any case. +--- + Makefile.local | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/Makefile.local b/Makefile.local +index f0c4453574b8..a9a6df8bf0e0 100644 +--- a/Makefile.local ++++ b/Makefile.local +@@ -10,10 +10,10 @@ + # repository), we let git append identification of the actual commit. + PACKAGE=notmuch + +-IS_GIT=$(shell if [ -d .git ] ; then echo yes ; else echo no; fi) ++IS_GIT=$(shell if [ -d ${srcdir}/.git ] ; then echo yes ; else echo no; fi) + + ifeq ($(IS_GIT),yes) +-DATE:=$(shell git log --date=short -1 --pretty=format:%cd) ++DATE:=$(shell git --git-dir=${srcdir}/.git log --date=short -1 --pretty=format:%cd) + else + DATE:=$(shell date +%F) + endif +@@ -21,7 +21,7 @@ endif + VERSION:=$(shell cat ${srcdir}/version) + ifeq ($(filter release release-message pre-release update-versions,$(MAKECMDGOALS)),) + ifeq ($(IS_GIT),yes) +-VERSION:=$(shell git describe --abbrev=7 --match '[0-9.]*'|sed -e s/_/~/ -e s/-/+/ -e s/-/~/) ++VERSION:=$(shell git --git-dir=${srcdir}/.git describe --abbrev=7 --match '[0-9.]*'|sed -e s/_/~/ -e s/-/+/ -e s/-/~/) + # Write the file 'version.stamp' in case its contents differ from $(VERSION) + FILE_VERSION:=$(shell test -f version.stamp && read vs < version.stamp || vs=; echo $$vs) + ifneq ($(FILE_VERSION),$(VERSION)) +@@ -200,11 +200,11 @@ verify-source-tree-and-version: verify-no-dirty-code + verify-no-dirty-code: release-checks + ifeq ($(IS_GIT),yes) + @printf "Checking that source tree is clean..." +-ifneq ($(shell git ls-files -m),) ++ifneq ($(shell git --git-dir=${srcdir}/.git ls-files -m),) + @echo "No" + @echo "The following files have been modified since the most recent git commit:" + @echo "" +- @git ls-files -m ++ @git --git-dir=${srcdir}/.git ls-files -m + @echo "" + @echo "The release will be made from the committed state, but perhaps you meant" + @echo "to commit this code first? Please clean this up to make it more clear." +-- +1.8.0 + -- 2.26.2