From b2a9fcd5cfd1bf84321b8bf53b37e7fb98618d6e Mon Sep 17 00:00:00 2001 From: Carl Worth Date: Fri, 2 Apr 2010 11:55:09 -0700 Subject: [PATCH] notmuch: Add a version (0.1 initially) with a new --version option. We're planning to do actual releases soon, so we need a version number to put into the tar file. --- Makefile.local | 14 +++++++++++++- notmuch-client.h | 3 +++ notmuch.c | 6 ++++++ 3 files changed, 22 insertions(+), 1 deletion(-) diff --git a/Makefile.local b/Makefile.local index c7f4719a..e9f86e0d 100644 --- a/Makefile.local +++ b/Makefile.local @@ -1,3 +1,15 @@ +# Here's the (hopefully simple) versioning scheme. +# +# Releases of notmuch have a two-digit version (0.1, 0.2, etc.). We +# increment the second digit for each release and increment the first +# digit when we reach particularly major milestones of usability. +# +# Between releases, (such as when compiling notmuch from the git +# repository), we add a third digit, (0.1.1, 0.1.2, etc.), and +# increment it occasionally, (such as after a big batch of commits are +# merged. +NOTMUCH_VERSION=0.1 + # Get settings from the output of configure by running it to generate # Makefile.config if it doesn't exist yet. And add Makefile.config to # our global dependency list. @@ -18,7 +30,7 @@ extra_cflags := extra_cxxflags := # Smash together user's values with our extra values -FINAL_CFLAGS = $(CFLAGS) $(WARN_CFLAGS) $(CONFIGURE_CFLAGS) $(extra_cflags) +FINAL_CFLAGS = -DNOTMUCH_VERSION=$(NOTMUCH_VERSION) $(CFLAGS) $(WARN_CFLAGS) $(CONFIGURE_CFLAGS) $(extra_cflags) FINAL_CXXFLAGS = $(CXXFLAGS) $(WARN_CXXFLAGS) $(CONFIGURE_CXXFLAGS) $(extra_cflags) $(extra_cxxflags) FINAL_LDFLAGS = $(LDFLAGS) $(CONFIGURE_LDFLAGS) diff --git a/notmuch-client.h b/notmuch-client.h index c80b39cb..08d0a15b 100644 --- a/notmuch-client.h +++ b/notmuch-client.h @@ -51,6 +51,9 @@ #define unused(x) x __attribute__ ((unused)) +#define STRINGIFY(s) STRINGIFY_(s) +#define STRINGIFY_(s) #s + /* There's no point in continuing when we've detected that we've done * something wrong internally (as opposed to the user passing in a * bogus value). diff --git a/notmuch.c b/notmuch.c index 3b743a90..e519f98e 100644 --- a/notmuch.c +++ b/notmuch.c @@ -309,6 +309,7 @@ usage (FILE *out) fprintf (out, "Usage: notmuch --help\n" + " notmuch --version\n" " notmuch [args...]\n"); fprintf (out, "\n"); fprintf (out, "Where and [args...] are as follows:\n"); @@ -462,6 +463,11 @@ main (int argc, char *argv[]) if (STRNCMP_LITERAL (argv[1], "--help") == 0) return notmuch_help_command (NULL, 0, NULL); + if (STRNCMP_LITERAL (argv[1], "--version") == 0) { + printf ("notmuch version " STRINGIFY(NOTMUCH_VERSION) "\n"); + return 0; + } + for (i = 0; i < ARRAY_SIZE (commands); i++) { command = &commands[i];