aboutsummaryrefslogtreecommitdiff
path: root/Makefile.local
AgeCommit message (Collapse)Author
2009-11-23Add 'notmuch count' command to show the count of matching messagesKeith Packard
Getting the count of matching threads or messages is a fairly expensive operation. Xapian provides a very efficient mechanism that returns an approximate value, so use that for this new command. This returns the number of matching messages, not threads, as that is cheap to compute. Signed-off-by: Keith Packard <keithp@keithp.com>
2009-11-22notmuch-new: Only install SIGALRM if not running under gdbChris Wilson
I felt sorry for Carl trying to step through an exception from xapian and suffering from the SIGALARMs.. We can detect if the user launched notmuch under a debugger by either checking our cmdline for the presence of the gdb string or querying if valgrind is controlling our process. For the latter we need to add a compile time check for the valgrind development library, and so add the initial support to build Makefile.config from configure. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Carl Worth <cworth@cworth.org> [ickle: And do not install the timer when under the debugger]
2009-11-22Makefile: Fix to work even with GZIP environment variable set.Carl Worth
The rule here was written to assume that if the GZIP environment variable was set that it would be the gzip binary to execute, (similar to the CC and CXX variables). But GZIP is actually used to pass arguments to gzip, so we have to use a different name.
2009-11-22Makefile: Magic silent rules.Chris Wilson
Use the facilities of GNU make to create a magic function that will on the first invocation print a description of how to enable verbose compile lines and then print the quiet rule. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: Carl Worth <cworth@cworth.org> Cc: Mikhail Gusarov <dottedmag@dottedmag.net> [ickle: Rebased, and duplicate command string eliminated.] [ickle: Fixed verbose bug pointed out by Mikhail]
2009-11-21Make bash completion directory configurable.James Rowe
Some systems install completion scripts in /usr/share/bash-completion, make the location configurable from Makefile.config.
2009-11-20bash-completion: Move to contribIngmar Vanhassel
Signed-off-by: Ingmar Vanhassel <ingmar@exherbo.org>
2009-11-20Add notmuch.1.gz to files to be cleanedMikhail Gusarov
Signed-off-by: Mikhail Gusarov <dottedmag@dottedmag.net>
2009-11-20Improve installation of emacs mode.Jeffrey C. Ollie
1) Add a separate targets to build and install emacs mode. 2) Don't hardcode the installation directory, instead use emacs' pkg-config module. 3) Install a byte compiled version of the emacs mode. 4) Install the emacs mode in emacs' site-lisp directory. Put "(require 'notmuch)" in your .emacs to load it automatically. 5) Ignore byte-compiled emacs files. Signed-off-by: Jeffrey C. Ollie <jeff@ocjtech.us> Reviewed-by: Ingmar Vanhassel <ingmar@exherbo.org> Reviewed-by: Keith Packard <keithp@keithp.com>
2009-11-19Put $(LDFLAGS) after the list of object files.Peter Wang
Some linkers on some systems are particularly picky about the order of arguments in order to properly linkt. So this fixes failures on some systems.
2009-11-19Makefile: Create elisp install directory explicitlyIngmar Vanhassel
When doing a DESTDIR install, this directory likely won't exist, and installing notmuch.el will fail. See 0d4b5292
2009-11-19Makefile: Actually install the emacs mode.Carl Worth
Should have been doing this a long time ago.
2009-11-18Fix linking with gcc to use g++ to link in C++ libs.Stewart Smith
Previously, Ubuntu 9.10, gcc 4.4.1 was getting: /usr/bin/ld: lib/notmuch.a(database.o): in function global constructors keyed to BOOLEAN_PREFIX_INTERNAL:database.cc(.text+0x3a): error: undefined reference to 'std::ios_base::Init::Init()'
2009-11-18Older versions of install do not support -C.Jan Janak
Do not use -C cmdline option of install, older versions, commonly found in distributions like Debian, do not seem to support it. Running make install on such systems (tested on Debian Lenny) fails. Signed-off-by: Jan Janak <jan@ryngle.com>
2009-11-17Makefile: Fix missing dependency for notmuch.1 manual page.Carl Worth
The Makefile was failing to regnerate the notmuch.1.gz file when notmuch.1 was updated, (so stale documentation could potentially be installed).
2009-11-17Makefile: Manual pages shouldn't be executableIngmar Vanhassel
2009-11-17Makefile: Change default install prefix from /usr to /usr/localCarl Worth
We'll be a much more polite package this way. And the user can change the prefix by editing Makefile.config. Still to be done is to make configure write out Makefile.config and to add a --prefix option to configure.
2009-11-17Makefile: Prefer directories as the target for install commands.Carl Worth
I was confusing myself with some rules installing to directories and some installing to files. We do still install to a filename when simultaneously renaming, (such as notmuch-completion.bash to notmuch).
2009-11-17Makefile: Create installation directories explicitlyIngmar Vanhassel
Previously, notmuch.1.gz was installed as /usr/share/man/man1 (a file).
2009-11-11notmuch new: Unbreak after the addition of notmuch-config.Carl Worth
Pull in the code from add-files.c now that notmuch_new_command is the only user, (we no longer have notmuch_setup_command adding any messages).
2009-11-11notmuch: Add a configuration system.Carl Worth
This will allow for things like the database path to be specified without any cheesy NOTMUCH_BASE environment variable. It also will allow "notmuch reply" to recognize the user's email address when constructing a reply in order to do the right thing, (that is, to use the user's address to which mail was sent as From:, and not to reply to the user's own addresses). With this change, the "notmuch setup" command is now strictly for changing the configuration of notmuch. It no longer creates the database, but instead instructs the user to call "notmuch new" to do that.
2009-11-10notmuch reply: Add (incomplete) reply commandKeith Packard
Reviewed-by: Carl Worth <cworth@cworth.org> Keith wrote all the code here against notmuch before notmuch.c was split up into multiple files. So I've pushed the code around in various ways to match the new code structure, but have generally tried to avoid making any changes to the behavior of the code. I did fix one bug---a missing call to g_mime_stream_file_set_owner in show_part which would cause "notmuch show" to go off into the weeds when trying to show multiple messages, (since the first stream would fclose stdout).
2009-11-10notmuch: Break notmuch.c up into several smaller files.Carl Worth
Now that the client sources are alone here in their own directory, (with all the library sources down inside the lib directory), we can break the client up into multiple files without mixing the files up. The hope is that these smaller files will be easier to manage and maintain.
2009-11-10Makefile: Simplify setting of CFLAGS, etc.Carl Worth
We were previously using separate CFLAGS and NOTMUCH_CFLAGS variables in an attempt to allow the user to specify CFLAGS on the command-line. However, that's just a lot of extra noise in the Makefile when we can instead let the user specify what is desired for CFLAGS and then use an override to append the things we require. So our Makefile is much neater now.
2009-11-10Implement a non-recursive make.Carl Worth
The idea here is that every Makefile at each lower level will be an identical, tiny file that simply defers to a top-level make. Meanwhile, the Makefile.local file at each level is a Makefile snippet to be included at the top-level into a large, flat Makefile. As such, it needs to define its rules with the entire relative directory to each file, (typically in $(dir)). The local files can also append to variables such as SRCS and CLEAN for files to be analyzed for dependencies and to be cleaned.