From 36d9292339f801c4c299f053c4326778518bafab Mon Sep 17 00:00:00 2001 From: Tomi Ollila Date: Tue, 25 Mar 2014 14:31:54 +0200 Subject: [PATCH] Re: [PATCH] build: move canonical list of subdirectories to configure script --- 31/702f659a4b5a23b45ac5deb3bf502089c1d330 | 139 ++++++++++++++++++++++ 1 file changed, 139 insertions(+) create mode 100644 31/702f659a4b5a23b45ac5deb3bf502089c1d330 diff --git a/31/702f659a4b5a23b45ac5deb3bf502089c1d330 b/31/702f659a4b5a23b45ac5deb3bf502089c1d330 new file mode 100644 index 000000000..49d7605e0 --- /dev/null +++ b/31/702f659a4b5a23b45ac5deb3bf502089c1d330 @@ -0,0 +1,139 @@ +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 14B1D431FBF + for ; Tue, 25 Mar 2014 05:32:05 -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 2BJCL23qCJrW for ; + Tue, 25 Mar 2014 05:32:01 -0700 (PDT) +Received: from guru.guru-group.fi (guru.guru-group.fi [46.183.73.34]) + by olra.theworths.org (Postfix) with ESMTP id 8402E431FBD + for ; Tue, 25 Mar 2014 05:32:01 -0700 (PDT) +Received: from guru.guru-group.fi (localhost [IPv6:::1]) + by guru.guru-group.fi (Postfix) with ESMTP id 5EA511000E5; + Tue, 25 Mar 2014 14:31:54 +0200 (EET) +From: Tomi Ollila +To: David Bremner , notmuch@notmuchmail.org +Subject: Re: [PATCH] build: move canonical list of subdirectories to configure + script +In-Reply-To: <1395747624-4411-1-git-send-email-david@tethera.net> +References: <87d2hbhvnq.fsf@zancas.localnet> + <1395747624-4411-1-git-send-email-david@tethera.net> +User-Agent: Notmuch/0.17+159~gb806a13 (http://notmuchmail.org) Emacs/24.3.1 + (x86_64-unknown-linux-gnu) +X-Face: HhBM'cA~ +MIME-Version: 1.0 +Content-Type: text/plain +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, 25 Mar 2014 12:32:05 -0000 + +On Tue, Mar 25 2014, David Bremner wrote: + +> The configure script needs this list for out of tree builds. Grabbing +> it from the Makefile via sed was fragile and broken. +> --- + +This is exactly what I was going to suggest if I had the time. + +LGTM. + +Tomi + + +> Makefile | 15 +++++---------- +> configure | 8 +++++++- +> 2 files changed, 12 insertions(+), 11 deletions(-) +> +> diff --git a/Makefile b/Makefile +> index 061c55a..4c0e8c6 100644 +> --- a/Makefile +> +++ b/Makefile +> @@ -2,16 +2,6 @@ +> # given explicitly on the command line) so mention it first. +> all: +> +> -# List all subdirectories here. Each contains its own Makefile.local. +> -# Use of '=', without '+=', seems to be required for out-of-tree +> -# builds to work. +> -subdirs = compat completion doc emacs lib parse-time-string \ +> - performance-test util test test/test-databases +> - +> -# We make all targets depend on the Makefiles themselves. +> -global_deps = Makefile Makefile.config Makefile.local \ +> - $(subdirs:%=%/Makefile) $(subdirs:%=%/Makefile.local) +> - +> # Sub-directory Makefile.local fragments can append to these variables +> # to have directory-specific cflags as necessary. +> +> @@ -27,6 +17,11 @@ extra_cxxflags := +> srcdir ?= . +> +> include Makefile.config +> + +> +# We make all targets depend on the Makefiles themselves. +> +global_deps = Makefile Makefile.config Makefile.local \ +> + $(subdirs:%=%/Makefile) $(subdirs:%=%/Makefile.local) +> + +> Makefile.config: $(srcdir)/configure +> ifeq ($(configure_options),) +> @echo "" +> diff --git a/configure b/configure +> index fb276f1..ab73317 100755 +> --- a/configure +> +++ b/configure +> @@ -19,11 +19,14 @@ readonly DEFAULT_IFS="$IFS" +> +> srcdir=$(dirname "$0") +> +> +subdirs="util compat lib parse-time-string completion doc emacs" +> +subdirs="${subdirs} performance-test test test/test-databases" +> + +> # For a non-srcdir configure invocation (such as ../configure), create +> # the directory structure and copy Makefiles. +> if [ "$srcdir" != "." ]; then +> +> - for dir in . $(grep "^subdirs *=" "$srcdir"/Makefile | sed -e "s/subdirs *= *//"); do +> + for dir in . ${subdirs}; do +> mkdir -p "$dir" +> cp "$srcdir"/"$dir"/Makefile.local "$dir" +> cp "$srcdir"/"$dir"/Makefile "$dir" +> @@ -698,6 +701,9 @@ cat > Makefile.config < # directory (the current directory at the time configure was run). +> srcdir = ${srcdir} +> +> +# subdirectories to build +> +subdirs = ${subdirs} +> + +> configure_options = $@ +> +> # We use vpath directives (rather than the VPATH variable) since the +> -- +> 1.9.0 +> +> _______________________________________________ +> notmuch mailing list +> notmuch@notmuchmail.org +> http://notmuchmail.org/mailman/listinfo/notmuch -- 2.26.2