PROJECT(madmutt C)
+SET(PACKAGE madmutt)
SET(CMAKE_MODULE_PATH ${madmutt_SOURCE_DIR}/cmake ${CMAKE_MODULE_PATH})
# TODO {{{
# USE_SETGID
# DOTLOCK_{GROUP,PERMISSION}
-# HAVE_DIRENT_D_INO
# }}}
INCLUDE(CMakeDetermineCCompiler)
ADD_DEFINITIONS(-DHAVE_CONFIG_H)
ADD_DEFINITIONS(-D_GNU_SOURCE)
-INCLUDE_DIRECTORIES(${CMAKE_BINARY_DIR} ${madmutt_SOURCE_DIR})
+INCLUDE_DIRECTORIES(${madmutt_BINARY_DIR} ${madmutt_SOURCE_DIR})
SET(BINDIR "${CMAKE_INSTALL_PREFIX}/bin")
+SET(DATADIR "${CMAKE_INSTALL_PREFIX}/share")
SET(PKGDATADIR "${CMAKE_INSTALL_PREFIX}/share/madmutt")
SET(PKGDOCDIR "${CMAKE_INSTALL_PREFIX}/share/doc/madmutt")
SET(SYSCONFDIR "${CMAKE_INSTALL_PREFIX}/etc")
ADD_DEFINITIONS("-DPKGDOCDIR=\\\"${PKGDOCDIR}\\\"")
ADD_DEFINITIONS("-DSYSCONFDIR=\\\"${SYSCONFDIR}\\\"")
ADD_DEFINITIONS("-DVERSION=\\\"${VERSION}\\\"")
+ADD_DEFINITIONS("-DMUTTLOCALEDIR=\\\"${DATADIR}/locale\\\"")
-OPTION(WITH_MAILPATH "Where new mail is spooled")
+SET(MAILPATH CACHE STRING "Where new mail is spooled")
OPTION(WITH_GPGME "Use GPGME [default: on]" ON)
OPTION(WITH_NNTP "Build NNTP support [default: off]")
OPTION(WITH_IDN "Use GNU libidn for domain names [default: off]")
OPTION(USE_FCNTL "Use fcntl to lock files [default: on]" ON)
OPTION(USE_HCACHE "Enable headers caching [default: off]")
-FIND_FILE(GPERF gperf)
-FIND_FILE(SENDMAIL sendmail PATHS /usr/sbin /sbin /usr/lib)
-FIND_FILE(MIXMASTER mixmaster)
-
-IF(WITH_MAILPATH)
- SET(MAILPATH ${WITH_MAILPATH})
-ELSEIF(EXISTS /var/mail)
- SET(MAILPATH "/var/mail")
-ELSEIF(EXISTS /var/spool/mail)
- SET(MAILPATH "/var/spool/mail")
-ELSEIF(EXISTS /usr/spool/mail)
- SET(MAILPATH "/usr/spool/mail")
-ELSEIF(EXISTS /usr/mail)
- SET(MAILPATH "/usr/mail")
-ENDIF(WITH_MAILPATH)
+FIND_FILE(SENDMAIL sendmail
+ PATHS /usr/sbin /sbin /usr/lib
+ DOC "path to sendmail executable"
+)
+FIND_FILE(MIXMASTER mixmaster DOC "path to mixmaster")
+IF(NOT MIXMASTER)
+ SET(MIXMASTER "mixmaster")
+ENDIF(NOT MIXMASTER)
+
+IF(NOT MAILPATH)
+ IF(EXISTS /var/mail)
+ SET(MAILPATH "/var/mail")
+ ELSEIF(EXISTS /var/spool/mail)
+ SET(MAILPATH "/var/spool/mail")
+ ELSEIF(EXISTS /usr/spool/mail)
+ SET(MAILPATH "/usr/spool/mail")
+ ELSEIF(EXISTS /usr/mail)
+ SET(MAILPATH "/usr/mail")
+ ELSE(EXISTS /var/mail)
+ MESSAGE(FATAL_ERROR "Unable to determine MAILPATH")
+ ENDIF(EXISTS /var/mail)
+ENDIF(NOT MAILPATH)
# headers {{{
INCLUDE(CheckIncludeFile)
CHECK_FUNCTION_EXISTS(strlimit HAVE_SETRLIMIT)
CHECK_FUNCTION_EXISTS(getsid HAVE_GETSID)
+CHECK_FUNCTION_EXISTS(setegid HAVE_SETEGID)
CHECK_FUNCTION_EXISTS(isctype HAVE_ISCTYPE)
CHECK_FUNCTION_EXISTS(getopt HAVE_GETOPT)
CHECK_FUNCTION_EXISTS(regcomp HAVE_REGCOMP)
INCLUDE_DIRECTORIES(${gpgme_INCDIR})
ADD_DEFINITIONS(${gpgme_CFLAGS})
SET(MUTTLIBS "${MUTTLIBS} ${gpgme_LDFLAGS}")
+ SET(HAVE_GPGME 1)
ENDIF(WITH_GPGME)
XCONFIG(libgnutls-config gnutls_INCDIR gnutls_LINKDIR gnutls_LDFLAGS gnutls_CFLAGS)
SET(MUTTLIBS "${MUTTLIBS} -lesmtp")
ENDIF(WITH_LIBESMTP)
-IF(WITH_NNTP)
+IF(WITH_NNTP AND NOT USE_NNTP)
SET(USE_NNTP 1)
MESSAGE(STATUS "building NNTP support")
-ENDIF(WITH_NNTP)
+ENDIF(WITH_NNTP AND NOT USE_NNTP)
# }}}
# C flags {{{
buffy.cpkg
charset.cpkg
crypt.cpkg
+ score.cpkg
account.c
attach.c
- base64.c
browser.c
commands.c
compose.c
recvattach.c
recvcmd.c
remailer.c
- score.c
send.c
sendlib.c
send_smtp.c
ADD_CUSTOM_COMMAND(
OUTPUT ${madmutt_SOURCE_DIR}/keymap_defs.h
- DEPENDS ${madmutt_SOURCE_DIR}/OPS
- COMMAND ${madmutt_SOURCE_DIR}/gen_defs ${madmutt_SOURCE_DIR}/OPS > ${madmutt_SOURCE_DIR}/keymap_defs.h
+ DEPENDS ${madmutt_SOURCE_DIR}/OPS ${madmutt_SOURCE_DIR}/tools/gen_defs
+ COMMAND ${madmutt_SOURCE_DIR}/tools/gen_defs ${madmutt_SOURCE_DIR}/OPS > ${madmutt_SOURCE_DIR}/keymap_defs.h
COMMENT "Generating ${madmutt_SOURCE_DIR}/keymap_defs.h from ${madmutt_SOURCE_DIR}/OPS"
)
ADD_CUSTOM_COMMAND(
COMMAND sh ${madmutt_SOURCE_DIR}/charset.def > ${madmutt_SOURCE_DIR}/charset.gperf
COMMENT "Generating ${madmutt_SOURCE_DIR}/charset.gperf from ${madmutt_SOURCE_DIR}/charset.def"
)
-SET(__mt ${CMAKE_CURRENT_SOURCE_DIR}/lib-mime/mime-token)
-ADD_CUSTOM_COMMAND(
- OUTPUT ${__mt}.h
- MAIN_DEPENDENCY ${__mt}.sh ${__mt}.def
- COMMAND sh ${__mt}.sh ${__mt}.h < ${__mt}.def
- COMMENT "Generating ${__mt}.h from ${__mt}.def"
-)
-SET(__lt ${CMAKE_CURRENT_SOURCE_DIR}/lib-lua/lua-token)
-ADD_CUSTOM_COMMAND(
- OUTPUT ${__lt}.h
- MAIN_DEPENDENCY ${__lt}.gperf
- COMMAND sh ${__lt}.gperf ${__lt}.h || \(${RM} ${__lt}.h; exit 1\)
- COMMENT "Generating ${__lt}.h from ${__lt}.gperf"
-)
-SET(__lm ${CMAKE_CURRENT_SOURCE_DIR}/lib-lua/madmutt)
-ADD_CUSTOM_COMMAND(
- OUTPUT ${__lm}.li
- MAIN_DEPENDENCY ${__lm}.cpkg
- COMMAND ${madmutt_SOURCE_DIR}/tools/cpkg2c -h ${__lm}.cpkg > ${__lm}.li || \(${RM} ${__lm}.li; exit 1\)
- COMMENT "Generating ${__lm}.li from ${__lm}.cpkg"
-)
-ADD_CUSTOM_TARGET(
- generate_files
- DEPENDS
- ${madmuttgen}
- ${madmutt_SOURCE_DIR}/keymap_defs.h
- ${madmutt_SOURCE_DIR}/charset.gperf
- ${madmutt_SOURCE_DIR}/lib-mime/mime-token.h
- ${madmutt_SOURCE_DIR}/lib-lua/lua-token.h
- ${madmutt_SOURCE_DIR}/lib-lua/madmutt.li
+ADD_CUSTOM_TARGET(generate_file
+ DEPENDS ${madmuttgen}
+ ${madmutt_SOURCE_DIR}/keymap_defs.h
+ ${madmutt_SOURCE_DIR}/charset.gperf
)
-ADD_DEPENDENCIES(madmutt generate_files)
+ADD_DEPENDENCIES(generate_file generate_files)
+ADD_DEPENDENCIES(madmutt generate_file)
# }}}