* remove hard dependency on wordexp.h (OpenBSD does not have it)
This commit is contained in:
44
configure.ac
44
configure.ac
@ -44,7 +44,7 @@ AM_PROG_LIBTOOL
|
|||||||
AC_PROG_AWK
|
AC_PROG_AWK
|
||||||
AC_CHECK_PROG(SORT,sort,sort)
|
AC_CHECK_PROG(SORT,sort,sort)
|
||||||
|
|
||||||
AC_CHECK_HEADERS([locale.h langinfo.h wordexp.h])
|
AC_CHECK_HEADERS([wordexp.h])
|
||||||
|
|
||||||
# use the 64-bit versions
|
# use the 64-bit versions
|
||||||
AC_SYS_LARGEFILE
|
AC_SYS_LARGEFILE
|
||||||
@ -365,6 +365,7 @@ echo "Emacs version : $emacs_version"
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
echo
|
echo
|
||||||
|
echo "Have wordexp : $ac_cv_header_wordexp_h"
|
||||||
echo "Build mu4e emacs frontend : $build_mu4e"
|
echo "Build mu4e emacs frontend : $build_mu4e"
|
||||||
echo "Build crypto support (gmime >= 2.6) : $have_gmime_26"
|
echo "Build crypto support (gmime >= 2.6) : $have_gmime_26"
|
||||||
echo "Build 'mug' toy-ui (gtk+/webkit) : $buildgui"
|
echo "Build 'mug' toy-ui (gtk+/webkit) : $buildgui"
|
||||||
@ -376,31 +377,38 @@ echo "Have direntry->d_type : $use_dirent_d_type"
|
|||||||
echo "------------------------------------------------"
|
echo "------------------------------------------------"
|
||||||
echo
|
echo
|
||||||
|
|
||||||
|
#
|
||||||
|
# Warnings / notes
|
||||||
|
#
|
||||||
|
|
||||||
|
# makeinfo
|
||||||
if test "x$have_makeinfo" != "xyes"; then
|
if test "x$have_makeinfo" != "xyes"; then
|
||||||
echo "You do not seem to have the makeinfo program; if you are building from git"
|
echo "* You do not seem to have the makeinfo program; if you are building from git"
|
||||||
echo "you need that to create documentation for guile and emacs. It is in the"
|
echo " you need that to create documentation for guile and emacs. It is in the"
|
||||||
echo "texinfo package in debian/ubuntu (ie., apt-get install texinfo)"
|
echo " texinfo package in debian/ubuntu (ie., apt-get install texinfo)"
|
||||||
|
echo
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# gui
|
||||||
if test "x$buildgui" = "xyes"; then
|
if test "x$buildgui" = "xyes"; then
|
||||||
echo "The demo UIs are in toys/mug and toys/mug2"
|
echo "* The demo UI will be built in toys/mug"
|
||||||
if test "x$gui" = "xgtk3"; then
|
echo
|
||||||
echo "Note that mug2 will *not* work with gtk+3, because it depends"
|
|
||||||
echo "on libraries that use gtk+2, and the two can't be in one process"
|
|
||||||
fi
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if test "x$GUILE_MAJOR_VERSION" = "x1"; then
|
# the unit tests
|
||||||
echo
|
echo "* You can run 'make check' to run the unit tests"
|
||||||
echo "NOTE: If you have troubles with linking the guile-related stuff, it"
|
echo
|
||||||
echo "might help to move .la-files out of the way"
|
|
||||||
echo
|
# wordexp
|
||||||
echo "See e.g: http://blog.flameeyes.eu/2008/04/14/what-about-those-la-files"
|
if test "x$ac_cv_header_wordexp_h" != "xyes"; then
|
||||||
|
echo "* Your system does not seem to have the 'wordexp' function."
|
||||||
|
echo " This means that you cannot use shell-like expansion in options and "
|
||||||
|
echo " some other places. So, for example, instead of"
|
||||||
|
echo " --maildir=~/Maildir"
|
||||||
|
echo " you should use the complete path, something like:"
|
||||||
|
echo " --maildir=/home/user/Maildir"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo
|
echo
|
||||||
echo "Now, type 'make' to build mu."
|
echo "Now, type 'make' to build mu."
|
||||||
echo
|
echo
|
||||||
echo "If unit tests are built (see above), you can run 'make check'"
|
|
||||||
echo "for some basic testing of mu functionality."
|
|
||||||
|
|||||||
@ -24,9 +24,12 @@
|
|||||||
#endif /*HAVE_CONFIG_H*/
|
#endif /*HAVE_CONFIG_H*/
|
||||||
|
|
||||||
#include "mu-util.h"
|
#include "mu-util.h"
|
||||||
|
|
||||||
#define _XOPEN_SOURCE 500
|
#define _XOPEN_SOURCE 500
|
||||||
|
|
||||||
|
#ifdef HAVE_WORDEXP_H
|
||||||
#include <wordexp.h> /* for shell-style globbing */
|
#include <wordexp.h> /* for shell-style globbing */
|
||||||
|
q#endif /*HAVE_WORDEXP_H*/
|
||||||
|
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
@ -43,9 +46,11 @@
|
|||||||
|
|
||||||
#include <langinfo.h>
|
#include <langinfo.h>
|
||||||
|
|
||||||
|
|
||||||
static char*
|
static char*
|
||||||
do_wordexp (const char *path)
|
do_wordexp (const char *path)
|
||||||
{
|
{
|
||||||
|
#ifdef HAVE_WORDEXP_H
|
||||||
wordexp_t wexp;
|
wordexp_t wexp;
|
||||||
char *dir;
|
char *dir;
|
||||||
|
|
||||||
@ -69,10 +74,13 @@ do_wordexp (const char *path)
|
|||||||
#ifndef __APPLE__
|
#ifndef __APPLE__
|
||||||
wordfree (&wexp);
|
wordfree (&wexp);
|
||||||
#endif /*__APPLE__*/
|
#endif /*__APPLE__*/
|
||||||
|
|
||||||
return dir;
|
return dir;
|
||||||
}
|
|
||||||
|
|
||||||
|
# else /*!HAVE_WORDEXP_H*/
|
||||||
|
/* E.g. OpenBSD does not have wordexp.h, so we ignore it */
|
||||||
|
return path ? g_strdup (path) : NULL;
|
||||||
|
#endif /*HAVE_WORDEXP_H*/
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/* note, the g_debugs are commented out because this function may be
|
/* note, the g_debugs are commented out because this function may be
|
||||||
|
|||||||
@ -34,6 +34,7 @@
|
|||||||
static void
|
static void
|
||||||
test_mu_util_dir_expand_00 (void)
|
test_mu_util_dir_expand_00 (void)
|
||||||
{
|
{
|
||||||
|
#ifdef HAVE_WORDEXP_H
|
||||||
gchar *got, *expected;
|
gchar *got, *expected;
|
||||||
|
|
||||||
got = mu_util_dir_expand ("~/IProbablyDoNotExist");
|
got = mu_util_dir_expand ("~/IProbablyDoNotExist");
|
||||||
@ -44,12 +45,13 @@ test_mu_util_dir_expand_00 (void)
|
|||||||
|
|
||||||
g_free (got);
|
g_free (got);
|
||||||
g_free (expected);
|
g_free (expected);
|
||||||
|
#endif /*HAVE_WORDEXP_H*/
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
test_mu_util_dir_expand_01 (void)
|
test_mu_util_dir_expand_01 (void)
|
||||||
{
|
{
|
||||||
|
#ifdef HAVE_WORDEXP_H
|
||||||
gchar *got, *expected;
|
gchar *got, *expected;
|
||||||
|
|
||||||
got = mu_util_dir_expand ("~/Desktop");
|
got = mu_util_dir_expand ("~/Desktop");
|
||||||
@ -60,7 +62,7 @@ test_mu_util_dir_expand_01 (void)
|
|||||||
|
|
||||||
g_free (got);
|
g_free (got);
|
||||||
g_free (expected);
|
g_free (expected);
|
||||||
|
#endif /*HAVE_WORDEXP_H*/
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user