CC=${CC:-gcc}
CXX=${CXX:-g++}
+CFLAGS=${CFLAGS:--O2}
+CXXFLAGS=${CXXFLAGS:-\$(CFLAGS)}
+
+# defaults
+PREFIX=/usr/local
+
+# option parsing
+for option; do
+ if [ "${option%%=*}" = '--prefix' ] ; then
+ PREFIX="${option#*=}"
+ fi
+done
cat <<EOF
Welcome to Notmuch, a system for indexing, searching and tagging your email.
fi
cat <<EOF
-On a modern, package-based operating system such as Debian, you can
-install all of the dependencies with the following simple command
-line:
+With any luck, you're using a modern, package-based operating system
+that has all of these packages available in the distribution. In that
+case a simple command will install everything you need. For example:
+
+On Debian and similar systems:
sudo apt-get install libxapian-dev libgmime-2.4-dev libtalloc-dev
-Or on Fedora or other RPM-based systems:
+Or on Fedora and similar systems:
sudo yum install xapian-core-devel gmime-devel libtalloc-devel
-On other systems, a similar command can be used, but the details of the
-package names may be different, (such as "devel" in place of "dev").
+On other systems, similar commands can be used, but the details of the
+package names may be different.
EOF
if [ $have_pkg_config -eq 0 ]; then
to install pkg-config with a command such as:
sudo apt-get install pkg-config
-
Or:
sudo yum install pkgconfig
# The C++ compiler to use
CXX = ${CXX}
+# Default FLAGS for C compiler (can be overridden by user such as "make CFLAGS=-g")
+CFLAGS = ${CFLAGS}
+
+# Default FLAGS for C++ compiler (can be overridden by user such as "make CXXFLAGS=-g")
+CXXFLAGS = ${CXXFLAGS}
+
# The prefix to which notmuch should be installed
-prefix = /usr/local
+prefix = ${PREFIX}
# The directory to which emacs lisp files should be installed
emacs_lispdir=${emacs_lispdir}
GMIME_CFLAGS = ${gmime_cflags}
GMIME_LDFLAGS = ${gmime_ldflags}
-# Flags needed to compile and linke against talloc
+# Flags needed to compile and link against talloc
TALLOC_CFLAGS = ${talloc_cflags}
TALLOC_LDFLAGS = ${talloc_ldflags}
VALGRIND_CFLAGS = ${valgrind_cflags}
# Combined flags for compiling and linking against all of the above
-override CFLAGS += -DHAVE_GETLINE=\$(HAVE_GETLINE) \$(GMIME_CFLAGS) \\
+CONFIGURE_CFLAGS = -DHAVE_GETLINE=\$(HAVE_GETLINE) \$(GMIME_CFLAGS) \\
\$(TALLOC_CFLAGS) -DHAVE_VALGRIND=\$(HAVE_VALGRIND) \\
\$(VALGRIND_CFLAGS)
-override CXXFLAGS += -DHAVE_GETLINE=\$(HAVE_GETLINE) \$(GMIME_CFLAGS) \\
+CONFIGURE_CXXFLAGS = -DHAVE_GETLINE=\$(HAVE_GETLINE) \$(GMIME_CFLAGS) \\
\$(TALLOC_CFLAGS) -DHAVE_VALGRIND=\$(HAVE_VALGRIND) \\
\$(VALGRIND_CFLAGS) \$(XAPIAN_CXXFLAGS)
-override LDFLAGS += \$(GMIME_LDFLAGS) \$(TALLOC_LDFLAGS) \$(XAPIAN_LDFLAGS)
+CONFIGURE_LDFLAGS = \$(GMIME_LDFLAGS) \$(TALLOC_LDFLAGS) \$(XAPIAN_LDFLAGS)
EOF