X-Git-Url: http://git.marmaro.de/?a=blobdiff_plain;f=configure.in;h=e113860ef74ec6a7d352ab45eb1c69a25157a85c;hb=56a805299de35d8924969138aef4d0f1580daa6d;hp=59d9207fc6eb952a3db52cf5f696829f3ee35c19;hpb=ff610b72f05b849f45730692195932852810541c;p=mmh diff --git a/configure.in b/configure.in index 59d9207..e113860 100644 --- a/configure.in +++ b/configure.in @@ -221,14 +221,29 @@ fi AC_PROG_CC +AC_CACHE_CHECK(whether compiler supports -Wno-pointer-sign, nmh_cv_has_noptrsign, +[nmh_saved_cflags="$CFLAGS" + CFLAGS="$CFLAGS -Wno-pointer-sign" + AC_TRY_COMPILE([],[],nmh_cv_has_noptrsign=yes,nmh_cv_has_noptrsign=no) + CFLAGS="$nmh_saved_cflags"]) + dnl if the user hasn't specified CFLAGS, then dnl if compiler is gcc, then dnl use -O2 and some warning flags dnl else use -O +dnl We use -Wall; if the compiler supports it we also use -Wno-pointer-sign, +dnl because gcc 4 now produces a lot of new warnings which are probably mostly +dnl spurious and which in any case we don't want to deal with now. +if test "$nmh_cv_has_noptrsign" = "yes"; then + nmh_gcc_warnflags="-Wall -Wno-pointer-sign" +else + nmh_gcc_warnflags="-Wall" +fi + if test -n "$auto_cflags"; then if test x"$enable_debug" = x"yes"; then if test -n "$GCC"; then - test -z "$CFLAGS" && CFLAGS="-Wall -g" || CFLAGS="$CFLAGS -Wall -g" + test -z "$CFLAGS" && CFLAGS="$nmh_gcc_warnflags -g" || CFLAGS="$CFLAGS $nmh_gcc_warnflags -g" else test -z "$CFLAGS" && CFLAGS=-g || CFLAGS="$CFLAGS -g" fi @@ -244,7 +259,7 @@ if test -n "$auto_cflags"; then esac fi if test -n "$GCC"; then - test -z "$CFLAGS" && CFLAGS="-Wall -O2" || CFLAGS="$CFLAGS -Wall -O2" + test -z "$CFLAGS" && CFLAGS="$nmh_gcc_warnflags -O2" || CFLAGS="$CFLAGS $nmh_gcc_warnflags -O2" else test -z "$CFLAGS" && CFLAGS=-O || CFLAGS="$CFLAGS -O" fi @@ -367,20 +382,6 @@ if test -z "$editorpath"; then fi AC_SUBST(editorpath)dnl -dnl Check for broken vi -AC_CACHE_CHECK(for broken vi, nmh_cv_attvibug, -[if echo 'r /nonexist-file -q' | ex > /dev/null -then - nmh_cv_attvibug=no -else - nmh_cv_attvibug=yes -fi]) - -if test "$nmh_cv_attvibug" = yes; then - AC_DEFINE(ATTVIBUG)dnl -fi - dnl ---------------------------------------------------------- dnl FIND MAIL SPOOL AND SEE IF WE NEED TO MAKE inc SETGID MAIL dnl ---------------------------------------------------------- @@ -426,7 +427,7 @@ fi dnl If mailspool is not world-writable and dotlockfile is not setgid, dnl we need to #define MAILGROUP to 1 and make inc setgid. -if test x"$nmh_cv_mailspool_world_writable" = x"no" -a x"$nmh_cv_dotlockfile_setgid" != x"yes" ; then +if test x"$LOCKTYPE" = x"dot" -a x"$nmh_cv_mailspool_world_writable" = x"no" -a x"$nmh_cv_dotlockfile_setgid" != x"yes" ; then dnl do we really need both of these? AC_DEFINE(MAILGROUP)dnl SETGID_MAIL=1 @@ -443,6 +444,25 @@ AC_SUBST(MAIL_SPOOL_GRP)dnl dnl ------------------ dnl CHECK HEADER FILES dnl ------------------ + +dnl On glibc we need to define at least the '_XOPEN_SOURCE' level of features, +dnl or wchar.h doesn't declare a prototype for wcwidth(). But if we only define +dnl that level then db.h won't compile. So we define _GNU_SOURCE which turns +dnl on everything. Perhaps other OSes need some feature switch set to get wcwidth() +dnl declared; if so they should have an entry added to this case statement. +dnl NB that we must define this on the compiler command line, not in config.h, +dnl because it must be set before any system header is included and there's no +dnl portable way to make sure that files generated by lex include config.h +dnl before system header files. + +case "$target_os" in + linux*) + # Like DEFS, but doesn't get stomped on by configure when using config.h: + OURDEFS="$OURDEFS -D_GNU_SOURCE" + ;; +esac +AC_SUBST(OURDEFS) + AC_HEADER_DIRENT AC_HEADER_STDC AC_HEADER_TIME @@ -983,6 +1003,7 @@ target os : ${target} compiler : ${CC} compiler flags : ${CFLAGS} linker flags : ${LDFLAGS} +definitions : ${OURDEFS} source code location : ${srcdir} binary install path : ${nmhbin2} libary install path : ${nmhlib2}