X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=CMakeLists.txt;h=67bede316a720be0aa8b1e1c6e07383cf89f1d78;hp=c72e2ae7919396b29383e58698da8decc5046a2b;hb=cfe08f2ca21af629f74268f1f1425a5fec0494cd;hpb=74dda532c4844f38025d575926787532d41d613d diff --git a/CMakeLists.txt b/CMakeLists.txt index c72e2ae..67bede3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -4,7 +4,6 @@ SET(CMAKE_MODULE_PATH ${madmutt_SOURCE_DIR}/cmake ${CMAKE_MODULE_PATH}) # TODO {{{ # USE_SETGID -# DOTLOCK_{GROUP,PERMISSION} # }}} INCLUDE(CMakeDetermineCCompiler) @@ -13,7 +12,7 @@ include(XConfig) 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") @@ -34,8 +33,6 @@ 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(WITH_LIBESMTP "Use libESMTP [default: off]") -OPTION(WITH_SLANG "Use S-Lang instead of ncurses [default:off]") OPTION(USE_FLOCK "Use flock to lock files [default: off]") OPTION(USE_FCNTL "Use fcntl to lock files [default: on]" ON) @@ -45,10 +42,6 @@ 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) @@ -117,22 +110,7 @@ INCLUDE (CheckFunctionExists) 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) -CHECK_FUNCTION_EXISTS(iswalnum HAVE_ISWALNUM) -CHECK_FUNCTION_EXISTS(iswalpha HAVE_ISWALPHA) -CHECK_FUNCTION_EXISTS(iswcntrl HAVE_ISWCNTRL) -CHECK_FUNCTION_EXISTS(iswdigit HAVE_ISWDIGIT) -CHECK_FUNCTION_EXISTS(iswgraph HAVE_ISWGRAPH) -CHECK_FUNCTION_EXISTS(iswlower HAVE_ISWLOWER) -CHECK_FUNCTION_EXISTS(iswprint HAVE_ISWPRINT) -CHECK_FUNCTION_EXISTS(iswpunct HAVE_ISWPUNCT) -CHECK_FUNCTION_EXISTS(iswspace HAVE_ISWSPACE) -CHECK_FUNCTION_EXISTS(iswupper HAVE_ISWUPPER) -CHECK_FUNCTION_EXISTS(iswxdigit HAVE_ISWXDIGIT) -CHECK_FUNCTION_EXISTS(towupper HAVE_TOWUPPER) -CHECK_FUNCTION_EXISTS(towlower HAVE_TOWLOWER) CHECK_FUNCTION_EXISTS(nl_langinfo HAVE_LANGINFO_CODESET) # }}} @@ -140,40 +118,22 @@ CHECK_FUNCTION_EXISTS(nl_langinfo HAVE_LANGINFO_CODESET) INCLUDE(CheckLibraryExists) INCLUDE(UsePkgConfig) -IF(WITH_SLANG) - IF(EXISTS ${CMAKE_INSTALL_PREFIX}/include/slang) - INCLUDE_DIRECTORIES(${CMAKE_INSTALL_PREFIX}/include/slang) - ELSEIF(EXISTS /usr/include/slang) - INCLUDE_DIRECTORIES(/usr/include/slang) - ENDIF(EXISTS ${CMAKE_INSTALL_PREFIX}/include/slang) - CHECK_LIBRARY_EXISTS(slang SLtt_get_terminfo "" USE_SLANG_CURSES) - IF(NOT USE_SLANG_CURSES) - MESSAGE(FATAL_ERROR "s-lang not found") - ENDIF(NOT USE_SLANG_CURSES) -ELSE(WITH_SLANG) - IF(HAVE_NCURSESW_NCURSES_H) - SET(CMAKE_REQUIRED_INCLUDES "ncursesw/ncurses.h") - SET(MUTTLIBS "${MUTTLIBS} -lncursesw") - ELSEIF(HAVE_NCURSES_H) - SET(CMAKE_REQUIRED_INCLUDES "ncurses.h") - SET(MUTTLIBS "${MUTTLIBS} -lncurses") - ELSEIF(HAVE_NCURSES_H OR HAVE_NCURSES_NCURSES_H) - SET(CMAKE_REQUIRED_INCLUDES "ncurses/ncurses.h") - SET(MUTTLIBS "${MUTTLIBS} -lncurses") - ELSE(HAVE_NCURSESW_NCURSES_H) - MESSAGE(FATAL_ERROR "could not find ncurses.h") - ENDIF(HAVE_NCURSESW_NCURSES_H) - SET(CMAKE_REQUIRED_LIBRARIES ${MUTTLIBS}) - CHECK_FUNCTION_EXISTS(start_color HAVE_START_COLOR) - CHECK_FUNCTION_EXISTS(typeahead HAVE_TYPEAHEAD) - CHECK_FUNCTION_EXISTS(bkgdset HAVE_BKGDSET) - CHECK_FUNCTION_EXISTS(curs_set HAVE_CURS_SET) - CHECK_FUNCTION_EXISTS(meta HAVE_META) - CHECK_FUNCTION_EXISTS(use_default_colors HAVE_USE_DEFAULT_COLORS) - CHECK_FUNCTION_EXISTS(resizeterm HAVE_RESIZETERM) - SET(CMAKE_REQUIRED_LIBRARIES) - SET(CMAKE_REQUIRED_INCLUDES) -ENDIF(WITH_SLANG) +IF(HAVE_NCURSESW_NCURSES_H) + SET(CMAKE_REQUIRED_INCLUDES "ncursesw/ncurses.h") + SET(MUTTLIBS "${MUTTLIBS} -lncursesw") +ELSEIF(HAVE_NCURSES_H) + SET(CMAKE_REQUIRED_INCLUDES "ncurses.h") + SET(MUTTLIBS "${MUTTLIBS} -lncurses") +ELSEIF(HAVE_NCURSES_H OR HAVE_NCURSES_NCURSES_H) + SET(CMAKE_REQUIRED_INCLUDES "ncurses/ncurses.h") + SET(MUTTLIBS "${MUTTLIBS} -lncurses") +ELSE(HAVE_NCURSESW_NCURSES_H) + MESSAGE(FATAL_ERROR "could not find ncurses.h") +ENDIF(HAVE_NCURSESW_NCURSES_H) +SET(CMAKE_REQUIRED_LIBRARIES ${MUTTLIBS}) +CHECK_FUNCTION_EXISTS(resizeterm HAVE_RESIZETERM) +SET(CMAKE_REQUIRED_LIBRARIES) +SET(CMAKE_REQUIRED_INCLUDES) PKGCONFIG(lua5.1 lua_INCDIR lua_LINKDIR lua_LDFLAGS lua_CFLAGS) MESSAGE(STATUS "found lua5.1 at: INCDIR ${lua_INCDIR}") @@ -192,6 +152,7 @@ ENDIF(WITH_GPGME) XCONFIG(libgnutls-config gnutls_INCDIR gnutls_LINKDIR gnutls_LDFLAGS gnutls_CFLAGS) INCLUDE_DIRECTORIES(${gnutls_INCDIR}) ADD_DEFINITIONS(${gnutls_CFLAGS}) +CHECK_INCLUDE_FILE(gnutls/openssl.h HAVE_GNUTLS_OPENSSL_H) SET(MUTTLIBS "${MUTTLIBS} ${gnutls_LDFLAGS}") CHECK_LIBRARY_EXISTS(sasl2 sasl_client_init "" WITH_SASL) @@ -206,6 +167,12 @@ IF(WITH_IDN) SET(HAVE_LIBIDN 1) ENDIF(WITH_IDN) +CHECK_LIBRARY_EXISTS(lockfile lockfile_create "" WITH_LOCKFILE) +IF(NOT WITH_LOCKFILE) + MESSAGE(FATAL_ERROR "lockfile not found") +ENDIF(NOT WITH_LOCKFILE) +SET(MUTTLIBS "${MUTTLIBS} -llockfile") + IF(USE_HCACHE) OPTION(WITH_QDBM "Use qdbm for header caching [default: on]" ON) OPTION(WITH_GDBM "Use gdbm for header caching [default: off]") @@ -240,11 +207,6 @@ IF(USE_HCACHE) ENDIF(NOT USE_HCACHE) ENDIF(USE_HCACHE) -IF(WITH_LIBESMTP) - SET(USE_LIBESMTP 1) - SET(MUTTLIBS "${MUTTLIBS} -lesmtp") -ENDIF(WITH_LIBESMTP) - IF(WITH_NNTP AND NOT USE_NNTP) SET(USE_NNTP 1) MESSAGE(STATUS "building NNTP support") @@ -307,28 +269,25 @@ ADD_SUBDIRECTORY(lib-mime) ADD_SUBDIRECTORY(lib-sys) ADD_SUBDIRECTORY(lib-ui) ADD_SUBDIRECTORY(imap) -IF(WITH_NNTP) - ADD_SUBDIRECTORY(nntp) -ENDIF(WITH_NNTP) ADD_SUBDIRECTORY(lib-mx) ADD_SUBDIRECTORY(lib-lua) +ADD_SUBDIRECTORY(po) MADMUTT_SOURCES(madmuttsrc madmuttgen alias.cpkg buffy.cpkg charset.cpkg crypt.cpkg + score.cpkg account.c attach.c - base64.c browser.c commands.c compose.c copy.c editmsg.c flags.c - from.c handler.c headers.c help.c @@ -344,35 +303,30 @@ MADMUTT_SOURCES(madmuttsrc madmuttgen postpone.c recvattach.c recvcmd.c - remailer.c - score.c send.c sendlib.c - send_smtp.c sort.c state.c thread.c main.c ) - -ADD_EXECUTABLE(madmutt ${madmuttsrc}) IF(WITH_NNTP) - TARGET_LINK_LIBRARIES(madmutt mime sys mx lua imap nntp ui lib) -ELSE(WITH_NNTP) - TARGET_LINK_LIBRARIES(madmutt mime sys mx lua imap ui lib) + MADMUTT_SOURCES(madmuttsrc madmuttgen + nntp.c + ) ENDIF(WITH_NNTP) -SET_TARGET_PROPERTIES(madmutt PROPERTIES LINK_FLAGS ${MUTTLIBS}) -ADD_EXECUTABLE(madmutt_dotlock dotlock.c) -TARGET_LINK_LIBRARIES(madmutt_dotlock lib) +ADD_EXECUTABLE(madmutt ${madmuttsrc}) +TARGET_LINK_LIBRARIES(madmutt mime sys mx lua imap ui lib) +SET_TARGET_PROPERTIES(madmutt PROPERTIES LINK_FLAGS ${MUTTLIBS}) # generate_files hack {{{ ADD_CUSTOM_COMMAND( OUTPUT ${madmutt_SOURCE_DIR}/keymap_defs.h - DEPENDS ${madmutt_SOURCE_DIR}/OPS ${madmutt_SOURCE_DIR}/gen_defs - 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(