1 Return-Path: <blakej@foo.net>
\r
2 X-Original-To: notmuch@notmuchmail.org
\r
3 Delivered-To: notmuch@notmuchmail.org
\r
4 Received: from localhost (localhost [127.0.0.1])
\r
5 by olra.theworths.org (Postfix) with ESMTP id 67D9C431FAF
\r
6 for <notmuch@notmuchmail.org>; Tue, 13 Nov 2012 18:10:16 -0800 (PST)
\r
7 X-Virus-Scanned: Debian amavisd-new at olra.theworths.org
\r
11 X-Spam-Status: No, score=0 tagged_above=-999 required=5 tests=[none]
\r
13 Received: from olra.theworths.org ([127.0.0.1])
\r
14 by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024)
\r
15 with ESMTP id sii9vu6c0vL5 for <notmuch@notmuchmail.org>;
\r
16 Tue, 13 Nov 2012 18:10:14 -0800 (PST)
\r
17 Received: from foo.net (70-36-235-136.dsl.static.sonic.net [70.36.235.136])
\r
18 (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
\r
19 (No client certificate requested)
\r
20 by olra.theworths.org (Postfix) with ESMTPS id F0B18431FC3
\r
21 for <notmuch@notmuchmail.org>; Tue, 13 Nov 2012 18:10:11 -0800 (PST)
\r
22 Received: from foo.net (localhost [127.0.0.1])
\r
23 by foo.net (8.14.5+Sun/8.14.5) with ESMTP id qAE2A9Bf018913;
\r
24 Tue, 13 Nov 2012 18:10:09 -0800 (PST)
\r
25 Received: (from blakej@localhost)
\r
26 by foo.net (8.14.5+Sun/8.14.5/Submit) id qAE2A9ra018909;
\r
27 Tue, 13 Nov 2012 18:10:09 -0800 (PST)
\r
28 From: Blake Jones <blakej@foo.net>
\r
29 To: notmuch@notmuchmail.org
\r
30 Subject: [PATCH v3 05/10] install: check for non-SysV version (Solaris
\r
32 Date: Tue, 13 Nov 2012 18:10:00 -0800
\r
33 Message-Id: <1352859005-18631-6-git-send-email-blakej@foo.net>
\r
34 X-Mailer: git-send-email 1.7.3.2
\r
35 In-Reply-To: <1352859005-18631-1-git-send-email-blakej@foo.net>
\r
36 References: <1352859005-18631-1-git-send-email-blakej@foo.net>
\r
37 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-2.0.2
\r
38 (foo.net [127.0.0.1]); Tue, 13 Nov 2012 18:10:09 -0800 (PST)
\r
39 X-BeenThere: notmuch@notmuchmail.org
\r
40 X-Mailman-Version: 2.1.13
\r
42 List-Id: "Use and development of the notmuch mail system."
\r
43 <notmuch.notmuchmail.org>
\r
44 List-Unsubscribe: <http://notmuchmail.org/mailman/options/notmuch>,
\r
45 <mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>
\r
46 List-Archive: <http://notmuchmail.org/pipermail/notmuch>
\r
47 List-Post: <mailto:notmuch@notmuchmail.org>
\r
48 List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>
\r
49 List-Subscribe: <http://notmuchmail.org/mailman/listinfo/notmuch>,
\r
50 <mailto:notmuch-request@notmuchmail.org?subject=subscribe>
\r
51 X-List-Received-Date: Wed, 14 Nov 2012 02:10:16 -0000
\r
53 Solaris ships a program called "install" in /usr/sbin, which performs a
\r
54 task that's fairly similar to the GNU and BSD "install" programs but
\r
55 which uses very different command line arguments. In particular, if it
\r
56 is invoked without "-c", "-f", or "-n", it will search the target
\r
57 directory for a file with the same name as the one being installed, and
\r
58 it will only install the file if it finds a matching name. More
\r
59 excitingly, if it doesn't find a match, it will look in /bin, /usr/bin,
\r
60 /etc, /lib, and /usr/lib and try to do the same there.
\r
62 The standard workaround for this is to use GNU install.
\r
63 It is available via the standard Solaris packaging system (in
\r
64 "file/gnu-coreutils"), and installs itself as /usr/bin/ginstall.
\r
66 This patch adds a check to "configure" to see if "install" behaves in a
\r
67 way that's compatible with GNU and BSD install, and if not, it uses a
\r
68 program called "ginstall" instead. It also modifies "configure" to set
\r
69 the $(INSTALL) variable, and changes various Makefiles to use it.
\r
71 Makefile.local | 2 +-
\r
72 completion/Makefile.local | 4 ++--
\r
73 configure | 19 +++++++++++++++++++
\r
74 emacs/Makefile.local | 6 +++---
\r
75 lib/Makefile.local | 4 ++--
\r
76 man/Makefile.local | 6 +++---
\r
77 vim/Makefile | 11 +++++------
\r
78 7 files changed, 35 insertions(+), 17 deletions(-)
\r
80 diff --git a/Makefile.local b/Makefile.local
\r
81 index 2b91946..7ccb1cd 100644
\r
82 --- a/Makefile.local
\r
83 +++ b/Makefile.local
\r
84 @@ -286,7 +286,7 @@ notmuch-shared: $(notmuch_client_modules) lib/$(LINKER_NAME)
\r
86 install: all install-man
\r
87 mkdir -p "$(DESTDIR)$(prefix)/bin/"
\r
88 - install notmuch-shared "$(DESTDIR)$(prefix)/bin/notmuch"
\r
89 + $(INSTALL) notmuch-shared "$(DESTDIR)$(prefix)/bin/notmuch"
\r
90 ifeq ($(MAKECMDGOALS), install)
\r
92 @echo "Notmuch is now installed to $(DESTDIR)$(prefix)"
\r
93 diff --git a/completion/Makefile.local b/completion/Makefile.local
\r
94 index dfc1271..a648a78 100644
\r
95 --- a/completion/Makefile.local
\r
96 +++ b/completion/Makefile.local
\r
97 @@ -14,9 +14,9 @@ install-$(dir):
\r
99 ifeq ($(WITH_BASH),1)
\r
100 mkdir -p "$(DESTDIR)$(bash_completion_dir)"
\r
101 - install -m0644 $(bash_script) "$(DESTDIR)$(bash_completion_dir)/notmuch"
\r
102 + $(INSTALL) -m0644 $(bash_script) "$(DESTDIR)$(bash_completion_dir)/notmuch"
\r
104 ifeq ($(WITH_ZSH),1)
\r
105 mkdir -p "$(DESTDIR)$(zsh_completion_dir)"
\r
106 - install -m0644 $(zsh_script) "$(DESTDIR)$(zsh_completion_dir)/_notmuch"
\r
107 + $(INSTALL) -m0644 $(zsh_script) "$(DESTDIR)$(zsh_completion_dir)/_notmuch"
\r
109 diff --git a/configure b/configure
\r
110 index c9da667..d9a101f 100755
\r
113 @@ -591,6 +591,21 @@ for flag in -Wmissing-declarations; do
\r
115 printf "\n\t${WARN_CFLAGS}\n"
\r
118 +printf "Checking for working \"install\" program... "
\r
123 +if install 1 dest > /dev/null 2>&1 ; then
\r
124 + printf "\"install\" works fine.\n"
\r
126 + INSTALL="ginstall"
\r
127 + printf "using \"ginstall\".\n"
\r
132 rm -f minimal minimal.c
\r
135 @@ -777,4 +792,8 @@ CONFIGURE_CXXFLAGS = -DHAVE_GETLINE=\$(HAVE_GETLINE) \$(GMIME_CFLAGS) \\
\r
136 -DSTD_ASCTIME=\$(STD_ASCTIME)
\r
137 CONFIGURE_LDFLAGS = \$(GMIME_LDFLAGS) \$(TALLOC_LDFLAGS) \$(XAPIAN_LDFLAGS) \\
\r
140 +# Which "install" program to use
\r
141 +INSTALL = ${INSTALL}
\r
144 diff --git a/emacs/Makefile.local b/emacs/Makefile.local
\r
145 index fb82247..ee778cb 100644
\r
146 --- a/emacs/Makefile.local
\r
147 +++ b/emacs/Makefile.local
\r
148 @@ -36,11 +36,11 @@ endif
\r
149 .PHONY: install-emacs
\r
151 mkdir -p "$(DESTDIR)$(emacslispdir)"
\r
152 - install -m0644 $(emacs_sources) "$(DESTDIR)$(emacslispdir)"
\r
153 + $(INSTALL) -m0644 $(emacs_sources) "$(DESTDIR)$(emacslispdir)"
\r
154 ifeq ($(HAVE_EMACS),1)
\r
155 - install -m0644 $(emacs_bytecode) "$(DESTDIR)$(emacslispdir)"
\r
156 + $(INSTALL) -m0644 $(emacs_bytecode) "$(DESTDIR)$(emacslispdir)"
\r
158 mkdir -p "$(DESTDIR)$(emacsetcdir)"
\r
159 - install -m0644 $(emacs_images) "$(DESTDIR)$(emacsetcdir)"
\r
160 + $(INSTALL) -m0644 $(emacs_images) "$(DESTDIR)$(emacsetcdir)"
\r
162 CLEAN := $(CLEAN) $(emacs_bytecode)
\r
163 diff --git a/lib/Makefile.local b/lib/Makefile.local
\r
164 index 7785944..0c6b258 100644
\r
165 --- a/lib/Makefile.local
\r
166 +++ b/lib/Makefile.local
\r
167 @@ -89,11 +89,11 @@ install: install-$(dir)
\r
169 install-$(dir): $(dir)/$(LIBNAME)
\r
170 mkdir -p "$(DESTDIR)$(libdir)/"
\r
171 - install -m0644 "$(lib)/$(LIBNAME)" "$(DESTDIR)$(libdir)/"
\r
172 + $(INSTALL) -m0644 "$(lib)/$(LIBNAME)" "$(DESTDIR)$(libdir)/"
\r
173 ln -sf $(LIBNAME) "$(DESTDIR)$(libdir)/$(SONAME)"
\r
174 ln -sf $(LIBNAME) "$(DESTDIR)$(libdir)/$(LINKER_NAME)"
\r
175 mkdir -p "$(DESTDIR)$(includedir)"
\r
176 - install -m0644 "$(srcdir)/$(lib)/notmuch.h" "$(DESTDIR)$(includedir)/"
\r
177 + $(INSTALL) -m0644 "$(srcdir)/$(lib)/notmuch.h" "$(DESTDIR)$(includedir)/"
\r
178 $(LIBRARY_INSTALL_POST_COMMAND)
\r
180 SRCS := $(SRCS) $(libnotmuch_c_srcs) $(libnotmuch_cxx_srcs)
\r
181 diff --git a/man/Makefile.local b/man/Makefile.local
\r
182 index 72e2a18..07dcf4c 100644
\r
183 --- a/man/Makefile.local
\r
184 +++ b/man/Makefile.local
\r
185 @@ -38,9 +38,9 @@ install-man: $(COMPRESSED_MAN)
\r
186 mkdir -p "$(DESTDIR)$(mandir)/man1"
\r
187 mkdir -p "$(DESTDIR)$(mandir)/man5"
\r
188 mkdir -p "$(DESTDIR)$(mandir)/man7"
\r
189 - install -m0644 $(MAN1_GZ) $(DESTDIR)/$(mandir)/man1
\r
190 - install -m0644 $(MAN5_GZ) $(DESTDIR)/$(mandir)/man5
\r
191 - install -m0644 $(MAN7_GZ) $(DESTDIR)/$(mandir)/man7
\r
192 + $(INSTALL) -m0644 $(MAN1_GZ) $(DESTDIR)/$(mandir)/man1
\r
193 + $(INSTALL) -m0644 $(MAN5_GZ) $(DESTDIR)/$(mandir)/man5
\r
194 + $(INSTALL) -m0644 $(MAN7_GZ) $(DESTDIR)/$(mandir)/man7
\r
195 cd $(DESTDIR)/$(mandir)/man1 && ln -sf notmuch.1.gz notmuch-setup.1.gz
\r
197 update-man-versions: $(MAN_SOURCE)
\r
198 diff --git a/vim/Makefile b/vim/Makefile
\r
199 index f17bebf..2e4b785 100644
\r
203 .PHONY: all help install link symlink
\r
205 +include ../Makefile.config
\r
207 files = plugin/notmuch.vim \
\r
208 $(wildcard syntax/notmuch-*.vim)
\r
209 prefix = $(HOME)/.vim
\r
210 -destdir = $(prefix)/plugin
\r
212 -INSTALL = install -D -m644
\r
216 @@ -17,7 +16,7 @@ help:
\r
217 @echo " make symlink - create symlinks in ~/.vim (useful for development)"
\r
220 - @for x in $(files); do $(INSTALL) $(CURDIR)/$$x $(prefix)/$$x; done
\r
221 + @for x in $(files); do $(INSTALL) -D -m644 $(CURDIR)/$$x $(prefix)/$$x; done
\r
223 -link symlink: INSTALL = ln -fs
\r
224 -link symlink: install
\r
226 + @for x in $(files); do ln -fs $(CURDIR)/$$x $(prefix)/$$x; done
\r