Migrated build system to CMake. Conditional file compilation. Automatic selection of platform handler.
This commit is contained in:
parent
8a8ce29f13
commit
cce1c28bce
26
.gitignore
vendored
26
.gitignore
vendored
@ -1,17 +1,33 @@
|
||||
*.o
|
||||
*.swp
|
||||
build/
|
||||
*.sw?
|
||||
*.a
|
||||
*.dSYM
|
||||
*.vim
|
||||
|
||||
/libvmime.a
|
||||
/vmime.pc
|
||||
/vmime/config.hpp
|
||||
# Doxygen-generated
|
||||
doc/html/*
|
||||
|
||||
# SConstruct
|
||||
.sconsign.dblite
|
||||
/options.cache
|
||||
|
||||
# CMake-generated / Build files
|
||||
/CMakeFiles/
|
||||
/CMakeCache.txt
|
||||
/_CPack_Packages/
|
||||
/cmake_install.cmake
|
||||
/CPackConfig.cmake
|
||||
/CPackSourceConfig.cmake
|
||||
/Doxyfile
|
||||
/Makefile
|
||||
/install_manifest*
|
||||
/libvmime.a
|
||||
/libvmime.pc
|
||||
/libvmime*
|
||||
/vmime/config.hpp
|
||||
/COPYING.txt
|
||||
/build/
|
||||
|
||||
# Mac
|
||||
._DS_Store
|
||||
|
||||
|
630
CMakeLists.txt
Normal file
630
CMakeLists.txt
Normal file
@ -0,0 +1,630 @@
|
||||
#
|
||||
# CMake configuration file for VMime
|
||||
#
|
||||
# Usage:
|
||||
#
|
||||
# . 'cmake -LH' to list build settings variable
|
||||
#
|
||||
# . 'cmake -G <generator>' to generate makefiles for a build system
|
||||
# eg. cmake -G "Unix Makefiles"
|
||||
#
|
||||
# For more information, please visit:
|
||||
# http://www.cmake.org
|
||||
#
|
||||
|
||||
CMAKE_MINIMUM_REQUIRED(VERSION 2.6 FATAL_ERROR)
|
||||
|
||||
INCLUDE(cmake/Utils.cmake)
|
||||
|
||||
# CMake configuration
|
||||
SET(CMAKE_RUNTIME_OUTPUT_DIRECTORY build/bin)
|
||||
SET(CMAKE_LIBRARY_OUTPUT_DIRECTORY build/lib)
|
||||
|
||||
SET(CMAKE_VERBOSE_MAKEFILE ON)
|
||||
|
||||
|
||||
# Project
|
||||
PROJECT(vmime)
|
||||
|
||||
# Package version number
|
||||
SET(VMIME_VERSION_MAJOR 0)
|
||||
SET(VMIME_VERSION_MINOR 9)
|
||||
SET(VMIME_VERSION_MICRO 2)
|
||||
|
||||
# API version number (libtool)
|
||||
#
|
||||
# Increment this number only immediately before a public release.
|
||||
# This is independent from package version number.
|
||||
#
|
||||
# See: http://www.gnu.org/software/libtool/manual.html#Libtool-versioning
|
||||
#
|
||||
# . Implementation changed (eg. bug/security fix): REVISION++
|
||||
# . Interfaces added/removed/changed: CURRENT++, REVISION=0
|
||||
# . Interfaces added (upward-compatible changes): AGE++
|
||||
# . Interfaces removed: AGE=0
|
||||
SET(VMIME_API_VERSION_CURRENT 0)
|
||||
SET(VMIME_API_VERSION_REVISION 0)
|
||||
SET(VMIME_API_VERSION_AGE 0)
|
||||
|
||||
|
||||
SET(VMIME_VERSION ${VMIME_VERSION_MAJOR}.${VMIME_VERSION_MINOR}.${VMIME_VERSION_MICRO})
|
||||
SET(VMIME_API_VERSION ${VMIME_API_VERSION_CURRENT}.${VMIME_API_VERSION_REVISION}.${VMIME_API_VERSION_AGE})
|
||||
|
||||
|
||||
##############################################################################
|
||||
# VMime Library
|
||||
|
||||
# Set base name
|
||||
SET(VMIME_LIBRARY_NAME vmime)
|
||||
|
||||
# Source files
|
||||
FILE(
|
||||
GLOB_RECURSE
|
||||
VMIME_LIBRARY_SRC_FILES
|
||||
src/*
|
||||
)
|
||||
|
||||
FILE(
|
||||
GLOB_RECURSE
|
||||
VMIME_LIBRARY_INCLUDE_FILES
|
||||
vmime/*
|
||||
)
|
||||
|
||||
INCLUDE_DIRECTORIES(
|
||||
${CMAKE_CURRENT_SOURCE_DIR}
|
||||
)
|
||||
|
||||
# Automatically set lib suffix
|
||||
IF(UNIX AND NOT APPLE AND NOT CMAKE_CROSSCOMPILING AND NOT EXISTS "/etc/debian_version")
|
||||
IF(CMAKE_SIZEOF_VOID_P EQUAL 8 AND NOT LIB_SUFFIX)
|
||||
SET(LIB_SUFFIX 64)
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
|
||||
# Shared library
|
||||
ADD_LIBRARY(
|
||||
${VMIME_LIBRARY_NAME}
|
||||
SHARED
|
||||
${VMIME_LIBRARY_SRC_FILES}
|
||||
${VMIME_LIBRARY_INCLUDE_FILES}
|
||||
)
|
||||
|
||||
SET_TARGET_PROPERTIES(
|
||||
${VMIME_LIBRARY_NAME}
|
||||
PROPERTIES
|
||||
VERSION "${VMIME_VERSION}"
|
||||
SOVERSION "${VMIME_API_VERSION}"
|
||||
)
|
||||
|
||||
# Static library
|
||||
#
|
||||
# Note: cannot have two targets with the same name so the static version has
|
||||
# '-static' appended and then the name of the output file is set separately.
|
||||
ADD_LIBRARY(
|
||||
${VMIME_LIBRARY_NAME}-static
|
||||
STATIC
|
||||
${VMIME_LIBRARY_SRC_FILES}
|
||||
${VMIME_LIBRARY_INCLUDE_FILES}
|
||||
)
|
||||
|
||||
SET_TARGET_PROPERTIES(
|
||||
${VMIME_LIBRARY_NAME}-static
|
||||
PROPERTIES
|
||||
OUTPUT_NAME ${VMIME_LIBRARY_NAME}
|
||||
)
|
||||
|
||||
# These next two lines are required but it is unclear exactly what they do.
|
||||
# The CMake FAQ mentions they are necessary and it does not work otherwise.
|
||||
SET_TARGET_PROPERTIES(${VMIME_LIBRARY_NAME} PROPERTIES CLEAN_DIRECT_OUTPUT 1)
|
||||
SET_TARGET_PROPERTIES(${VMIME_LIBRARY_NAME}-static PROPERTIES CLEAN_DIRECT_OUTPUT 1)
|
||||
|
||||
SET(CMAKE_INSTALL_LIBDIR lib CACHE PATH "Output directory for libraries")
|
||||
|
||||
# Installation of libraries
|
||||
INSTALL(
|
||||
TARGETS ${VMIME_LIBRARY_NAME}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT sharedlibs
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT sharedlibs
|
||||
)
|
||||
|
||||
INSTALL(
|
||||
TARGETS ${VMIME_LIBRARY_NAME}-static
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT staticlibs
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT staticlibs
|
||||
)
|
||||
|
||||
# Installation of header files
|
||||
INSTALL_HEADERS_WITH_DIRECTORY(VMIME_LIBRARY_INCLUDE_FILES headers)
|
||||
|
||||
#INSTALL(
|
||||
# FILES ${VMIME_LIBRARY_INCLUDE_FILES}
|
||||
# DESTINATION include
|
||||
# COMPONENT headers
|
||||
#)
|
||||
|
||||
|
||||
##############################################################################
|
||||
# Tests
|
||||
|
||||
OPTION(
|
||||
VMIME_BUILD_TESTS
|
||||
"Build unit tests (this will create a 'run-tests' binary)"
|
||||
OFF
|
||||
)
|
||||
|
||||
IF(VMIME_BUILD_TESTS)
|
||||
|
||||
FILE(
|
||||
GLOB_RECURSE
|
||||
VMIME_TESTS_SRC_FILES
|
||||
tests/*Test.cpp tests/testRunner.cpp tests/testUtils.cpp
|
||||
)
|
||||
|
||||
ADD_EXECUTABLE(
|
||||
"run-tests"
|
||||
${VMIME_TESTS_SRC_FILES}
|
||||
)
|
||||
|
||||
INCLUDE(cmake/FindCppUnit.cmake)
|
||||
|
||||
INCLUDE_DIRECTORIES(${CPPUNIT_INCLUDE_DIR})
|
||||
|
||||
TARGET_LINK_LIBRARIES(
|
||||
"run-tests"
|
||||
${VMIME_LIBRARY_NAME}
|
||||
${CPPUNIT_LIBRARY}
|
||||
)
|
||||
|
||||
ADD_DEPENDENCIES(
|
||||
"run-tests"
|
||||
${VMIME_LIBRARY_NAME}
|
||||
)
|
||||
|
||||
ENDIF()
|
||||
|
||||
|
||||
##############################################################################
|
||||
# Packaging / Distribution
|
||||
|
||||
# Package information
|
||||
SET(VMIME_PACKAGE_NAME ${VMIME_LIBRARY_NAME})
|
||||
SET(VMIME_PACKAGE_VERSION ${VMIME_VERSION})
|
||||
SET(VMIME_PACKAGE_CONTACT "Vincent Richard <vincent@vmime.org>")
|
||||
SET(VMIME_PACKAGE_DESCRIPTION "VMime C++ Mail Library (http://www.vmime.org)")
|
||||
|
||||
SET(CPACK_PACKAGE_NAME "${VMIME_PACKAGE_NAME}")
|
||||
SET(CPACK_PACKAGE_CONTACT "${VMIME_PACKAGE_CONTACT}")
|
||||
SET(CPACK_PACKAGE_DESCRIPTION "${VMIME_PACKAGE_DESCRIPTION}")
|
||||
SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "${CPACK_PACKAGE_DESCRIPTION}")
|
||||
SET(CPACK_PACKAGE_VERSION "${VMIME_PACKAGE_VERSION}")
|
||||
|
||||
# Package settings
|
||||
SET(CPACK_RESOURCE_FILE_LICENSE ${CMAKE_SOURCE_DIR}/COPYING)
|
||||
|
||||
IF(APPLE)
|
||||
# CPack/PackageManager won't allow file without recognized extension
|
||||
# to be used as license file.
|
||||
CONFIGURE_FILE("${CMAKE_SOURCE_DIR}/COPYING" "${CMAKE_BINARY_DIR}/COPYING.txt" COPYONLY)
|
||||
SET(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_BINARY_DIR}/COPYING.txt")
|
||||
ELSE()
|
||||
SET(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_SOURCE_DIR}/COPYING")
|
||||
ENDIF(APPLE)
|
||||
|
||||
SET(CPACK_SOURCE_GENERATOR TGZ)
|
||||
SET(CPACK_SOURCE_IGNORE_FILES "\\\\.git;~$;build/")
|
||||
SET(CPACK_SOURCE_PACKAGE_FILE_NAME ${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION})
|
||||
|
||||
# Set components
|
||||
SET(CPACK_COMPONENTS_ALL sharedlibs staticlibs headers)
|
||||
|
||||
SET(CPACK_COMPONENT_SHAREDLIBS_DISPLAY_NAME "Shared libraries")
|
||||
SET(CPACK_COMPONENT_SHAREDLIBS_DESCRIPTION
|
||||
"Shared library for general use.")
|
||||
|
||||
SET(CPACK_COMPONENT_STATICLIBS_DISPLAY_NAME "Static libraries")
|
||||
SET(CPACK_COMPONENT_STATICLIBS_DESCRIPTION
|
||||
"Static library, good if you want to embed VMime in your application.")
|
||||
|
||||
SET(CPACK_COMPONENT_HEADERS_DISPLAY_NAME "C++ Headers")
|
||||
SET(CPACK_COMPONENT_HEADERS_DESCRIPTION
|
||||
"C/C++ header files.")
|
||||
|
||||
SET(CPACK_COMPONENT_SHAREDLIBS_GROUP "Development")
|
||||
SET(CPACK_COMPONENT_STATICLIBS_GROUP "Development")
|
||||
SET(CPACK_COMPONENT_HEADERS_GROUP "Development")
|
||||
SET(CPACK_COMPONENT_GROUP_DEVELOPMENT_DESCRIPTION "")
|
||||
|
||||
# Make a target "dist" to generate tarball
|
||||
SET(ARCHIVE_NAME ${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION})
|
||||
|
||||
ADD_CUSTOM_TARGET(
|
||||
dist
|
||||
COMMAND git archive --prefix=${ARCHIVE_NAME}/ HEAD
|
||||
| bzip2 > ${CMAKE_BINARY_DIR}/${ARCHIVE_NAME}.tar.bz2
|
||||
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
|
||||
)
|
||||
|
||||
# PkgConfig
|
||||
SET(prefix ${CMAKE_INSTALL_PREFIX})
|
||||
SET(exec_prefix ${CMAKE_INSTALL_PREFIX}/bin)
|
||||
SET(includedir ${CMAKE_INSTALL_PREFIX}/include/vmime)
|
||||
|
||||
SET(VMIME_PKGCONFIG_LIBS "")
|
||||
SET(VMIME_PKGCONFIG_CFLAGS "")
|
||||
SET(VMIME_PKGCONFIG_REQUIRES "")
|
||||
|
||||
IF(${UNIX})
|
||||
SET(libdir ${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX})
|
||||
ENDIF(${UNIX})
|
||||
IF(${WIN32})
|
||||
SET(libdir ${CMAKE_INSTALL_PREFIX}/bin)
|
||||
ENDIF(${WIN32})
|
||||
|
||||
CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/libvmime.pc.in ${CMAKE_BINARY_DIR}/libvmime.pc @ONLY)
|
||||
INSTALL(FILES ${CMAKE_BINARY_DIR}/libvmime.pc DESTINATION lib${LIB_SUFFIX}/pkgconfig COMPONENT headers)
|
||||
|
||||
|
||||
##############################################################################
|
||||
# Build type
|
||||
|
||||
IF(NOT CMAKE_BUILD_TYPE)
|
||||
SET(
|
||||
CMAKE_BUILD_TYPE
|
||||
"Debug"
|
||||
CACHE STRING
|
||||
"Choose the type of build, options are: None Debug Release RelWithDebInfo MinSizeRel."
|
||||
FORCE
|
||||
)
|
||||
ENDIF(NOT CMAKE_BUILD_TYPE)
|
||||
|
||||
# Set a default build type for single-configuration
|
||||
# CMake generators if no build type is set.
|
||||
IF(NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE)
|
||||
SET(CMAKE_BUILD_TYPE Debug)
|
||||
ENDIF()
|
||||
|
||||
# Debug build
|
||||
MESSAGE("-- Build type: ${CMAKE_BUILD_TYPE}")
|
||||
IF(${CMAKE_BUILD_TYPE} STREQUAL Debug)
|
||||
ADD_DEFINITIONS(-DDEBUG)
|
||||
ENDIF(${CMAKE_BUILD_TYPE} STREQUAL Debug)
|
||||
|
||||
|
||||
IF(CMAKE_BUILD_TYPE STREQUAL "Debug")
|
||||
SET(VMIME_DEBUG 1)
|
||||
ELSE()
|
||||
SET(VMIME_DEBUG 0)
|
||||
ENDIF()
|
||||
|
||||
|
||||
##############################################################################
|
||||
# Test endianness and basic type sizes
|
||||
|
||||
INCLUDE(TestBigEndian)
|
||||
TEST_BIG_ENDIAN(BIGENDIAN)
|
||||
|
||||
IF(BIGENDIAN EQUAL 0)
|
||||
set(VMIME_BYTE_ORDER_BIG_ENDIAN 0)
|
||||
set(VMIME_BYTE_ORDER_LITTLE_ENDIAN 1)
|
||||
ELSE(BIGENDIAN EQUAL 0)
|
||||
SET(VMIME_BYTE_ORDER_BIG_ENDIAN 1)
|
||||
SET(VMIME_BYTE_ORDER_LITTLE_ENDIAN 0)
|
||||
ENDIF(BIGENDIAN EQUAL 0)
|
||||
|
||||
SET(VMIME_DEFAULT_8BIT_TYPE "char")
|
||||
SET(VMIME_DEFAULT_16BIT_TYPE "short")
|
||||
SET(VMIME_DEFAULT_32BIT_TYPE "int")
|
||||
|
||||
|
||||
SET(
|
||||
VMIME_8BIT_TYPE
|
||||
${VMIME_DEFAULT_8BIT_TYPE}
|
||||
CACHE STRING
|
||||
"The C-language 8-bit type for your platform"
|
||||
)
|
||||
|
||||
SET(
|
||||
VMIME_16BIT_TYPE
|
||||
${VMIME_DEFAULT_16BIT_TYPE}
|
||||
CACHE STRING
|
||||
"The C-language 16-bit type for your platform"
|
||||
)
|
||||
|
||||
SET(
|
||||
VMIME_32BIT_TYPE
|
||||
${VMIME_DEFAULT_32BIT_TYPE}
|
||||
CACHE STRING
|
||||
"The C-language 32-bit type for your platform"
|
||||
)
|
||||
|
||||
|
||||
INCLUDE(cmake/TargetArch.cmake)
|
||||
TARGET_ARCHITECTURE(CMAKE_TARGET_ARCHITECTURES)
|
||||
|
||||
|
||||
##############################################################################
|
||||
# Sendmail path
|
||||
|
||||
FOREACH (SENDMAIL_PATH /usr/sbin/sendmail /usr/lib/sendmail /usr/bin/sendmail /bin/sendmail /var/qmail/bin/qmail-inject /bin/cgimail)
|
||||
IF(EXISTS ${SENDMAIL_PATH})
|
||||
MESSAGE(STATUS "Sendmail binary found at ${SENDMAIL_PATH}")
|
||||
SET(VMIME_DEFAULT_SENDMAIL_PATH ${SENDMAIL_PATH})
|
||||
ENDIF()
|
||||
ENDFOREACH(SENDMAIL_PATH)
|
||||
|
||||
SET(
|
||||
VMIME_SENDMAIL_PATH
|
||||
${VMIME_DEFAULT_SENDMAIL_PATH}
|
||||
CACHE
|
||||
STRING
|
||||
"Specifies the path to sendmail binary"
|
||||
)
|
||||
|
||||
|
||||
##############################################################################
|
||||
# Messaging features
|
||||
|
||||
# Module
|
||||
OPTION(
|
||||
VMIME_HAVE_MESSAGING_FEATURES
|
||||
"Enable messaging features (connection to IMAP, POP3, SMTP...)"
|
||||
ON
|
||||
)
|
||||
|
||||
# Protocols
|
||||
OPTION(
|
||||
VMIME_HAVE_MESSAGING_PROTO_POP3
|
||||
"Enable POP3 protocol"
|
||||
ON
|
||||
)
|
||||
|
||||
OPTION(
|
||||
VMIME_HAVE_MESSAGING_PROTO_SMTP
|
||||
"Enable SMTP protocol"
|
||||
ON
|
||||
)
|
||||
|
||||
OPTION(
|
||||
VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
"Enable IMAP protocol"
|
||||
ON
|
||||
)
|
||||
|
||||
OPTION(
|
||||
VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
"Enable Maildir protocol"
|
||||
ON
|
||||
)
|
||||
|
||||
OPTION(
|
||||
VMIME_HAVE_MESSAGING_PROTO_SENDMAIL
|
||||
"Enable Sendmail protocol"
|
||||
ON
|
||||
)
|
||||
|
||||
|
||||
##############################################################################
|
||||
# File-system features
|
||||
|
||||
OPTION(
|
||||
VMIME_HAVE_FILESYSTEM_FEATURES
|
||||
"Enable file-system features (required for file attachments and Maildir)"
|
||||
ON
|
||||
)
|
||||
|
||||
|
||||
##############################################################################
|
||||
# SASL support
|
||||
|
||||
INCLUDE(cmake/FindGSasl.cmake)
|
||||
|
||||
OPTION(
|
||||
VMIME_HAVE_SASL_SUPPORT
|
||||
"Enable SASL support (requires GNU SASL library)"
|
||||
ON
|
||||
)
|
||||
|
||||
IF(VMIME_HAVE_SASL_SUPPORT)
|
||||
|
||||
INCLUDE_DIRECTORIES(
|
||||
${INCLUDE_DIRECTORIES}
|
||||
${GSASL_INCLUDE_DIR}
|
||||
)
|
||||
|
||||
TARGET_LINK_LIBRARIES(
|
||||
${VMIME_LIBRARY_NAME}
|
||||
${TARGET_LINK_LIBRARIES}
|
||||
${GSASL_LIBRARIES}
|
||||
)
|
||||
|
||||
SET(VMIME_PKGCONFIG_LIBS "${VMIME_PKGCONFIG_LIBS} ${GSASL_LIBRARIES}")
|
||||
SET(VMIME_PKGCONFIG_CFLAGS "${VMIME_PKGCONFIG_CFLAGS} ${GSASL_INCLUDE_DIR}")
|
||||
SET(VMIME_PKGCONFIG_REQUIRES "${VMIME_PKGCONFIG_REQUIRES} libgsasl")
|
||||
|
||||
ENDIF()
|
||||
|
||||
|
||||
##############################################################################
|
||||
# SSL/TLS support
|
||||
|
||||
INCLUDE(FindGnuTLS)
|
||||
|
||||
|
||||
INCLUDE(CheckFunctionExists)
|
||||
SET(CMAKE_REQUIRED_LIBRARIES "${GNUTLS_LIBRARY}")
|
||||
CHECK_FUNCTION_EXISTS(gnutls_priority_set_direct VMIME_HAVE_GNUTLS_PRIORITY_FUNCS)
|
||||
|
||||
|
||||
OPTION(
|
||||
VMIME_HAVE_TLS_SUPPORT
|
||||
"SSL/TLS support (requires GNU TLS library)"
|
||||
ON
|
||||
)
|
||||
|
||||
OPTION(
|
||||
VMIME_TLS_SUPPORT_LIB_IS_GNUTLS
|
||||
"Use GNU TLS library for SSL/TLS support"
|
||||
ON
|
||||
)
|
||||
|
||||
|
||||
IF(VMIME_HAVE_TLS_SUPPORT)
|
||||
|
||||
IF(VMIME_TLS_SUPPORT_LIB_IS_GNUTLS)
|
||||
|
||||
INCLUDE_DIRECTORIES(
|
||||
${INCLUDE_DIRECTORIES}
|
||||
${GNUTLS_INCLUDE_DIR}
|
||||
)
|
||||
|
||||
LINK_DIRECTORIES(
|
||||
${LINK_DIRECTORIES}
|
||||
${GNUTLS_LIBRARY_DIRS}
|
||||
)
|
||||
|
||||
TARGET_LINK_LIBRARIES(
|
||||
${VMIME_LIBRARY_NAME}
|
||||
${TARGET_LINK_LIBRARIES}
|
||||
${GNUTLS_LIBRARY}
|
||||
)
|
||||
|
||||
SET(VMIME_PKGCONFIG_LIBS "${VMIME_PKGCONFIG_LIBS} ${GNUTLS_LIBRARY_DIRS} ${GNUTLS_LIBRARY}")
|
||||
SET(VMIME_PKGCONFIG_CFLAGS "${VMIME_PKGCONFIG_CFLAGS} ${GNUTLS_INCLUDE_DIR}")
|
||||
SET(VMIME_PKGCONFIG_REQUIRES "${VMIME_PKGCONFIG_REQUIRES} libgnutls")
|
||||
|
||||
ELSE()
|
||||
|
||||
MESSAGE(FATAL_ERROR "TLS support is enabled, but no TLS/SSL library was selected/found")
|
||||
|
||||
ENDIF()
|
||||
|
||||
ENDIF(VMIME_HAVE_TLS_SUPPORT)
|
||||
|
||||
|
||||
##############################################################################
|
||||
# iconv
|
||||
|
||||
INCLUDE(cmake/FindIconv.cmake)
|
||||
|
||||
INCLUDE_DIRECTORIES(
|
||||
${INCLUDE_DIRECTORIES}
|
||||
${ICONV_INCLUDE_DIR}
|
||||
)
|
||||
|
||||
TARGET_LINK_LIBRARIES(
|
||||
${VMIME_LIBRARY_NAME}
|
||||
${TARGET_LINK_LIBRARIES}
|
||||
${ICONV_LIBRARIES}
|
||||
)
|
||||
|
||||
|
||||
##############################################################################
|
||||
# Platform
|
||||
|
||||
SET(VMIME_PLATFORM_IS_POSIX OFF)
|
||||
SET(VMIME_PLATFORM_IS_WINDOWS OFF)
|
||||
|
||||
IF(WIN32)
|
||||
SET(VMIME_PLATFORM_IS_WINDOWS ON)
|
||||
ELSE()
|
||||
SET(VMIME_PLATFORM_IS_POSIX ON)
|
||||
ENDIF()
|
||||
|
||||
|
||||
##############################################################################
|
||||
# POSIX-specific checks
|
||||
|
||||
INCLUDE(CheckFunctionExists)
|
||||
CHECK_FUNCTION_EXISTS(getaddrinfo VMIME_HAVE_GETADDRINFO)
|
||||
|
||||
FIND_PACKAGE(Threads)
|
||||
FIND_LIBRARY(PTHREAD pthread)
|
||||
|
||||
IF(PTHREAD)
|
||||
SET(VMIME_HAVE_PTHREAD 1)
|
||||
ELSE(PTHREAD)
|
||||
SET(VMIME_HAVE_PTHREAD 0)
|
||||
ENDIF(PTHREAD)
|
||||
|
||||
|
||||
##############################################################################
|
||||
# Additional compiler flags
|
||||
|
||||
IF("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
|
||||
|
||||
SET(
|
||||
CMAKE_CXX_FLAGS
|
||||
"${CMAKE_CXX_FLAGS} -D_REENTRANT=1 -W -Wall -pedantic -Warray-bounds-pointer-arithmetic -Wold-style-cast -Wconversion -Wcast-align -Wno-sign-conversion"
|
||||
CACHE STRING
|
||||
"g++ Compiler Flags"
|
||||
FORCE
|
||||
)
|
||||
|
||||
SET(CMAKE_CXX_FLAGS_RELEASE "-O2")
|
||||
SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -g")
|
||||
SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g")
|
||||
|
||||
#SET(CMAKE_EXE_LINKER_FLAGS "-s")
|
||||
|
||||
ELSE()
|
||||
|
||||
IF(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX)
|
||||
|
||||
SET(
|
||||
CMAKE_CXX_FLAGS
|
||||
"${CMAKE_CXX_FLAGS} -D_REENTRANT=1 -W -Wall -ansi -pedantic -Wpointer-arith -Wold-style-cast -Wconversion -Wcast-align"
|
||||
CACHE STRING
|
||||
"g++ Compiler Flags"
|
||||
FORCE
|
||||
)
|
||||
|
||||
SET(CMAKE_CXX_FLAGS_RELEASE "-O2")
|
||||
SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -g")
|
||||
SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g")
|
||||
|
||||
#SET(CMAKE_EXE_LINKER_FLAGS "-s")
|
||||
|
||||
ENDIF()
|
||||
|
||||
ENDIF()
|
||||
|
||||
|
||||
##############################################################################
|
||||
# Documentation
|
||||
|
||||
FIND_PACKAGE(Doxygen)
|
||||
|
||||
IF(DOXYGEN_FOUND)
|
||||
CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/Doxyfile.in ${CMAKE_BINARY_DIR}/Doxyfile @ONLY)
|
||||
|
||||
# Make a target so that documentation can be generated by running "make doc"
|
||||
ADD_CUSTOM_TARGET(
|
||||
doc
|
||||
${DOXYGEN_EXECUTABLE} ${CMAKE_BINARY_DIR}/Doxyfile
|
||||
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
|
||||
COMMENT "Generating API documentation with Doxygen" VERBATIM
|
||||
)
|
||||
ENDIF(DOXYGEN_FOUND)
|
||||
|
||||
|
||||
##############################################################################
|
||||
# Sanity checks
|
||||
|
||||
# Maildir protocol is available only if file-system features are enabled
|
||||
IF(VMIME_HAVE_MESSAGING_FEATURES AND VMIME_HAVE_MESSAGING_PROTO_MAILDIR AND NOT VMIME_HAVE_FILESYSTEM_FEATURES)
|
||||
MESSAGE(FATAL_ERROR "Maildir protocol requires file-system support (VMIME_HAVE_FILESYSTEM_FEATURES must be set to ON).")
|
||||
ENDIF()
|
||||
|
||||
# Path to 'sendmail' must be specified if Sendmail protocol is enabled
|
||||
IF(VMIME_HAVE_MESSAGING_PROTO_SENDMAIL)
|
||||
IF(NOT VMIME_SENDMAIL_PATH OR VMIME_SENDMAIL_PATH STREQUAL "")
|
||||
MESSAGE(FATAL_ERROR "Enabling Sendmail protocol requires that you specify path to 'sendmail' binary.")
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
|
||||
|
||||
# Set our configure file
|
||||
CONFIGURE_FILE(cmake/config.hpp.cmake vmime/config.hpp)
|
||||
|
||||
INCLUDE(CPack)
|
||||
|
@ -29,7 +29,7 @@ PROJECT_NUMBER =
|
||||
# If a relative path is entered, it will be relative to the location
|
||||
# where doxygen was started. If left blank the current directory will be used.
|
||||
|
||||
OUTPUT_DIRECTORY = ./doc/
|
||||
OUTPUT_DIRECTORY = @CMAKE_CURRENT_BINARY_DIR@/doc/
|
||||
|
||||
# The OUTPUT_LANGUAGE tag is used to specify the language in which all
|
||||
# documentation generated by doxygen is written. Doxygen will use this
|
||||
@ -344,7 +344,7 @@ WARN_LOGFILE =
|
||||
# directories like "/usr/src/myproject". Separate the files or directories
|
||||
# with spaces.
|
||||
|
||||
INPUT = ./src/ ./vmime/
|
||||
INPUT = @CMAKE_CURRENT_SOURCE_DIR@/src/ @CMAKE_CURRENT_SOURCE_DIR@/vmime/
|
||||
|
||||
# If the value of the INPUT tag contains directories, you can use the
|
||||
# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
|
@ -1,8 +1,13 @@
|
||||
Where are the ./configure script and the Makefile's?
|
||||
|
||||
Configure and Make scripts are not included in the git source tree. They are
|
||||
automatically generated by the SConstruct script.
|
||||
automatically generated by the CMake script.
|
||||
|
||||
Just type "scons autotools" to generate everything needed for the traditional
|
||||
./configure, make, make install build process.
|
||||
Just use the following instruction to generate everything needed for the
|
||||
traditional "make" and "make install" build process.
|
||||
|
||||
cmake -G "Unix Makefiles"
|
||||
|
||||
Please note that "configure" script is not needed anymore, as platform
|
||||
checks are now done by CMake.
|
||||
|
||||
|
1478
SConstruct
1478
SConstruct
File diff suppressed because it is too large
Load Diff
34
cmake/FindCppUnit.cmake
Normal file
34
cmake/FindCppUnit.cmake
Normal file
@ -0,0 +1,34 @@
|
||||
#
|
||||
# http://root.cern.ch/viewvc/trunk/cint/reflex/cmake/modules/FindCppUnit.cmake
|
||||
#
|
||||
# - Find CppUnit
|
||||
# This module finds an installed CppUnit package.
|
||||
#
|
||||
# It sets the following variables:
|
||||
# CPPUNIT_FOUND - Set to false, or undefined, if CppUnit isn't found.
|
||||
# CPPUNIT_INCLUDE_DIR - The CppUnit include directory.
|
||||
# CPPUNIT_LIBRARY - The CppUnit library to link against.
|
||||
|
||||
FIND_PATH(CPPUNIT_INCLUDE_DIR cppunit/Test.h)
|
||||
FIND_LIBRARY(CPPUNIT_LIBRARY NAMES cppunit)
|
||||
|
||||
IF (CPPUNIT_INCLUDE_DIR AND CPPUNIT_LIBRARY)
|
||||
SET(CPPUNIT_FOUND TRUE)
|
||||
ENDIF (CPPUNIT_INCLUDE_DIR AND CPPUNIT_LIBRARY)
|
||||
|
||||
IF (CPPUNIT_FOUND)
|
||||
|
||||
# show which CppUnit was found only if not quiet
|
||||
IF (NOT CppUnit_FIND_QUIETLY)
|
||||
MESSAGE(STATUS "Found CppUnit: ${CPPUNIT_LIBRARY}")
|
||||
ENDIF (NOT CppUnit_FIND_QUIETLY)
|
||||
|
||||
ELSE (CPPUNIT_FOUND)
|
||||
|
||||
# fatal error if CppUnit is required but not found
|
||||
IF (CppUnit_FIND_REQUIRED)
|
||||
MESSAGE(FATAL_ERROR "Could not find CppUnit")
|
||||
ENDIF (CppUnit_FIND_REQUIRED)
|
||||
|
||||
ENDIF (CPPUNIT_FOUND)
|
||||
|
51
cmake/FindGSasl.cmake
Normal file
51
cmake/FindGSasl.cmake
Normal file
@ -0,0 +1,51 @@
|
||||
# - Try to find the GNU sasl library (gsasl)
|
||||
#
|
||||
# Once done this will define
|
||||
#
|
||||
# GNUTLS_FOUND - System has gnutls
|
||||
# GNUTLS_INCLUDE_DIR - The gnutls include directory
|
||||
# GNUTLS_LIBRARIES - The libraries needed to use gnutls
|
||||
# GNUTLS_DEFINITIONS - Compiler switches required for using gnutls
|
||||
|
||||
# Adapted from FindGnuTLS.cmake, which is:
|
||||
# Copyright 2009, Brad Hards, <bradh@kde.org>
|
||||
#
|
||||
# Changes are Copyright 2009, Michele Caini, <skypjack@gmail.com>
|
||||
#
|
||||
# Redistribution and use is allowed according to the terms of the BSD license.
|
||||
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
|
||||
|
||||
|
||||
IF (GSASL_INCLUDE_DIR AND GSASL_LIBRARIES)
|
||||
# in cache already
|
||||
SET(GSasl_FIND_QUIETLY TRUE)
|
||||
ENDIF (GSASL_INCLUDE_DIR AND GSASL_LIBRARIES)
|
||||
|
||||
IF (NOT WIN32)
|
||||
# use pkg-config to get the directories and then use these values
|
||||
# in the FIND_PATH() and FIND_LIBRARY() calls
|
||||
find_package(PkgConfig)
|
||||
pkg_check_modules(PC_GSASL libgsasl)
|
||||
SET(GSASL_DEFINITIONS ${PC_GSASL_CFLAGS_OTHER})
|
||||
ENDIF (NOT WIN32)
|
||||
|
||||
FIND_PATH(GSASL_INCLUDE_DIR gsasl.h
|
||||
HINTS
|
||||
${PC_GSASL_INCLUDEDIR}
|
||||
${PC_GSASL_INCLUDE_DIRS}
|
||||
PATH_SUFFIXES gsasl
|
||||
)
|
||||
|
||||
FIND_LIBRARY(GSASL_LIBRARIES NAMES gsasl libgsasl
|
||||
HINTS
|
||||
${PC_GSASL_LIBDIR}
|
||||
${PC_GSASL_LIBRARY_DIRS}
|
||||
)
|
||||
|
||||
INCLUDE(FindPackageHandleStandardArgs)
|
||||
|
||||
# handle the QUIETLY and REQUIRED arguments and set GSASL_FOUND to TRUE if
|
||||
# all listed variables are TRUE
|
||||
FIND_PACKAGE_HANDLE_STANDARD_ARGS(GSASL DEFAULT_MSG GSASL_LIBRARIES GSASL_INCLUDE_DIR)
|
||||
|
||||
MARK_AS_ADVANCED(GSASL_INCLUDE_DIR GSASL_LIBRARIES)
|
61
cmake/FindIconv.cmake
Normal file
61
cmake/FindIconv.cmake
Normal file
@ -0,0 +1,61 @@
|
||||
# - Try to find Iconv
|
||||
# Once done this will define
|
||||
#
|
||||
# ICONV_FOUND - system has Iconv
|
||||
# ICONV_INCLUDE_DIR - the Iconv include directory
|
||||
# ICONV_LIBRARIES - Link these to use Iconv
|
||||
# ICONV_SECOND_ARGUMENT_IS_CONST - the second argument for iconv() is const
|
||||
#
|
||||
include(CheckCXXSourceCompiles)
|
||||
|
||||
IF (ICONV_INCLUDE_DIR AND ICONV_LIBRARIES)
|
||||
# Already in cache, be silent
|
||||
SET(ICONV_FIND_QUIETLY TRUE)
|
||||
ENDIF (ICONV_INCLUDE_DIR AND ICONV_LIBRARIES)
|
||||
|
||||
FIND_PATH(ICONV_INCLUDE_DIR iconv.h)
|
||||
|
||||
IF(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
||||
FIND_LIBRARY(ICONV_LIBRARIES NAMES iconv libiconv libiconv-2 c HINTS "/opt/local/lib")
|
||||
ELSE()
|
||||
FIND_LIBRARY(ICONV_LIBRARIES NAMES iconv libiconv libiconv-2 c)
|
||||
ENDIF()
|
||||
|
||||
IF(ICONV_INCLUDE_DIR AND ICONV_LIBRARIES)
|
||||
SET(ICONV_FOUND TRUE)
|
||||
ENDIF(ICONV_INCLUDE_DIR AND ICONV_LIBRARIES)
|
||||
|
||||
set(CMAKE_REQUIRED_INCLUDES ${ICONV_INCLUDE_DIR})
|
||||
set(CMAKE_REQUIRED_LIBRARIES ${ICONV_LIBRARIES})
|
||||
IF(ICONV_FOUND)
|
||||
check_cxx_source_compiles("
|
||||
#include <iconv.h>
|
||||
int main(){
|
||||
iconv_t conv = 0;
|
||||
const char* in = 0;
|
||||
size_t ilen = 0;
|
||||
char* out = 0;
|
||||
size_t olen = 0;
|
||||
iconv(conv, &in, &ilen, &out, &olen);
|
||||
return 0;
|
||||
}
|
||||
" ICONV_SECOND_ARGUMENT_IS_CONST )
|
||||
ENDIF(ICONV_FOUND)
|
||||
set(CMAKE_REQUIRED_INCLUDES)
|
||||
set(CMAKE_REQUIRED_LIBRARIES)
|
||||
|
||||
IF(ICONV_FOUND)
|
||||
IF(NOT ICONV_FIND_QUIETLY)
|
||||
MESSAGE(STATUS "Found Iconv: ${ICONV_LIBRARIES}")
|
||||
ENDIF(NOT ICONV_FIND_QUIETLY)
|
||||
ELSE(ICONV_FOUND)
|
||||
IF(Iconv_FIND_REQUIRED)
|
||||
MESSAGE(FATAL_ERROR "Could not find Iconv")
|
||||
ENDIF(Iconv_FIND_REQUIRED)
|
||||
ENDIF(ICONV_FOUND)
|
||||
|
||||
MARK_AS_ADVANCED(
|
||||
ICONV_INCLUDE_DIR
|
||||
ICONV_LIBRARIES
|
||||
ICONV_SECOND_ARGUMENT_IS_CONST
|
||||
)
|
136
cmake/TargetArch.cmake
Normal file
136
cmake/TargetArch.cmake
Normal file
@ -0,0 +1,136 @@
|
||||
# https://github.com/petroules/solar-cmake
|
||||
#
|
||||
# Based on the Qt 5 processor detection code, so should be very accurate
|
||||
# https://qt.gitorious.org/qt/qtbase/blobs/master/src/corelib/global/qprocessordetection.h
|
||||
# Currently handles arm (v5, v6, v7), x86 (32/64), ia64, and ppc (32/64)
|
||||
|
||||
# Regarding POWER/PowerPC, just as is noted in the Qt source,
|
||||
# "There are many more known variants/revisions that we do not handle/detect."
|
||||
|
||||
set(archdetect_c_code "
|
||||
#if defined(__arm__) || defined(__TARGET_ARCH_ARM)
|
||||
#if defined(__ARM_ARCH_7__) \\
|
||||
|| defined(__ARM_ARCH_7A__) \\
|
||||
|| defined(__ARM_ARCH_7R__) \\
|
||||
|| defined(__ARM_ARCH_7M__) \\
|
||||
|| (defined(__TARGET_ARCH_ARM) && __TARGET_ARCH_ARM-0 >= 7)
|
||||
#error cmake_ARCH armv7
|
||||
#elif defined(__ARM_ARCH_6__) \\
|
||||
|| defined(__ARM_ARCH_6J__) \\
|
||||
|| defined(__ARM_ARCH_6T2__) \\
|
||||
|| defined(__ARM_ARCH_6Z__) \\
|
||||
|| defined(__ARM_ARCH_6K__) \\
|
||||
|| defined(__ARM_ARCH_6ZK__) \\
|
||||
|| defined(__ARM_ARCH_6M__) \\
|
||||
|| (defined(__TARGET_ARCH_ARM) && __TARGET_ARCH_ARM-0 >= 6)
|
||||
#error cmake_ARCH armv6
|
||||
#elif defined(__ARM_ARCH_5TEJ__) \\
|
||||
|| (defined(__TARGET_ARCH_ARM) && __TARGET_ARCH_ARM-0 >= 5)
|
||||
#error cmake_ARCH armv5
|
||||
#else
|
||||
#error cmake_ARCH arm
|
||||
#endif
|
||||
#elif defined(__i386) || defined(__i386__) || defined(_M_IX86)
|
||||
#error cmake_ARCH i386
|
||||
#elif defined(__x86_64) || defined(__x86_64__) || defined(__amd64) || defined(_M_X64)
|
||||
#error cmake_ARCH x86_64
|
||||
#elif defined(__ia64) || defined(__ia64__) || defined(_M_IA64)
|
||||
#error cmake_ARCH ia64
|
||||
#elif defined(__ppc__) || defined(__ppc) || defined(__powerpc__) \\
|
||||
|| defined(_ARCH_COM) || defined(_ARCH_PWR) || defined(_ARCH_PPC) \\
|
||||
|| defined(_M_MPPC) || defined(_M_PPC)
|
||||
#if defined(__ppc64__) || defined(__powerpc64__) || defined(__64BIT__)
|
||||
#error cmake_ARCH ppc64
|
||||
#else
|
||||
#error cmake_ARCH ppc
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#error cmake_ARCH unknown
|
||||
")
|
||||
|
||||
# Set ppc_support to TRUE before including this file or ppc and ppc64
|
||||
# will be treated as invalid architectures since they are no longer supported by Apple
|
||||
|
||||
function(target_architecture output_var)
|
||||
if(APPLE AND CMAKE_OSX_ARCHITECTURES)
|
||||
# On OS X we use CMAKE_OSX_ARCHITECTURES *if* it was set
|
||||
# First let's normalize the order of the values
|
||||
|
||||
# Note that it's not possible to compile PowerPC applications if you are using
|
||||
# the OS X SDK version 10.6 or later - you'll need 10.4/10.5 for that, so we
|
||||
# disable it by default
|
||||
# See this page for more information:
|
||||
# http://stackoverflow.com/questions/5333490/how-can-we-restore-ppc-ppc64-as-well-as-full-10-4-10-5-sdk-support-to-xcode-4
|
||||
|
||||
# Architecture defaults to i386 or ppc on OS X 10.5 and earlier, depending on the CPU type detected at runtime.
|
||||
# On OS X 10.6+ the default is x86_64 if the CPU supports it, i386 otherwise.
|
||||
|
||||
foreach(osx_arch ${CMAKE_OSX_ARCHITECTURES})
|
||||
if("${osx_arch}" STREQUAL "ppc" AND ppc_support)
|
||||
set(osx_arch_ppc TRUE)
|
||||
elseif("${osx_arch}" STREQUAL "i386")
|
||||
set(osx_arch_i386 TRUE)
|
||||
elseif("${osx_arch}" STREQUAL "x86_64")
|
||||
set(osx_arch_x86_64 TRUE)
|
||||
elseif("${osx_arch}" STREQUAL "ppc64" AND ppc_support)
|
||||
set(osx_arch_ppc64 TRUE)
|
||||
else()
|
||||
message(FATAL_ERROR "Invalid OS X arch name: ${osx_arch}")
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
# Now add all the architectures in our normalized order
|
||||
if(osx_arch_ppc)
|
||||
list(APPEND ARCH ppc)
|
||||
endif()
|
||||
|
||||
if(osx_arch_i386)
|
||||
list(APPEND ARCH i386)
|
||||
endif()
|
||||
|
||||
if(osx_arch_x86_64)
|
||||
list(APPEND ARCH x86_64)
|
||||
endif()
|
||||
|
||||
if(osx_arch_ppc64)
|
||||
list(APPEND ARCH ppc64)
|
||||
endif()
|
||||
else()
|
||||
file(WRITE "${CMAKE_BINARY_DIR}/${CMAKE_FILES_DIRECTORY}/arch.c" "${archdetect_c_code}")
|
||||
|
||||
enable_language(C)
|
||||
|
||||
# Detect the architecture in a rather creative way...
|
||||
# This compiles a small C program which is a series of ifdefs that selects a
|
||||
# particular #error preprocessor directive whose message string contains the
|
||||
# target architecture. The program will always fail to compile (both because
|
||||
# file is not a valid C program, and obviously because of the presence of the
|
||||
# #error preprocessor directives... but by exploiting the preprocessor in this
|
||||
# way, we can detect the correct target architecture even when cross-compiling,
|
||||
# since the program itself never needs to be run (only the compiler/preprocessor)
|
||||
try_run(
|
||||
run_result_unused
|
||||
compile_result_unused
|
||||
"${CMAKE_BINARY_DIR}"
|
||||
"${CMAKE_BINARY_DIR}/${CMAKE_FILES_DIRECTORY}/arch.c"
|
||||
COMPILE_OUTPUT_VARIABLE ARCH
|
||||
CMAKE_FLAGS CMAKE_OSX_ARCHITECTURES=${CMAKE_OSX_ARCHITECTURES}
|
||||
)
|
||||
|
||||
# Parse the architecture name from the compiler output
|
||||
string(REGEX MATCH "cmake_ARCH ([a-zA-Z0-9_]+)" ARCH "${ARCH}")
|
||||
|
||||
# Get rid of the value marker leaving just the architecture name
|
||||
string(REPLACE "cmake_ARCH " "" ARCH "${ARCH}")
|
||||
|
||||
# If we are compiling with an unknown architecture this variable should
|
||||
# already be set to "unknown" but in the case that it's empty (i.e. due
|
||||
# to a typo in the code), then set it to unknown
|
||||
if (NOT ARCH)
|
||||
set(ARCH unknown)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
set(${output_var} "${ARCH}" PARENT_SCOPE)
|
||||
endfunction()
|
13
cmake/Utils.cmake
Normal file
13
cmake/Utils.cmake
Normal file
@ -0,0 +1,13 @@
|
||||
|
||||
# Installing headers and preserving the directory structure
|
||||
# Found here: http://www.semipol.de/archives/251
|
||||
MACRO(INSTALL_HEADERS_WITH_DIRECTORY HEADER_LIST COMPONENT_NAME)
|
||||
|
||||
FOREACH(HEADER ${${HEADER_LIST}})
|
||||
STRING(REGEX MATCH "(.*)[/\\]" DIR ${HEADER})
|
||||
STRING(REPLACE "${CMAKE_SOURCE_DIR}/" "" DIR ${DIR})
|
||||
INSTALL(FILES ${HEADER} DESTINATION include/${DIR} COMPONENT ${COMPONENT_NAME})
|
||||
ENDFOREACH(HEADER)
|
||||
|
||||
ENDMACRO(INSTALL_HEADERS_WITH_DIRECTORY)
|
||||
|
66
cmake/config.hpp.cmake
Normal file
66
cmake/config.hpp.cmake
Normal file
@ -0,0 +1,66 @@
|
||||
//
|
||||
// This file was automatically generated by CMake.
|
||||
//
|
||||
|
||||
#ifndef VMIME_CONFIG_HPP_INCLUDED
|
||||
#define VMIME_CONFIG_HPP_INCLUDED
|
||||
|
||||
|
||||
// Name of package
|
||||
#define VMIME_PACKAGE "@PROJECT_NAME@"
|
||||
|
||||
// Version number of package
|
||||
#define VMIME_VERSION "@VMIME_VERSION@"
|
||||
#define VMIME_API "@VMIME_API_VERSION@"
|
||||
|
||||
// Target OS and architecture
|
||||
#define VMIME_TARGET_ARCH "@CMAKE_TARGET_ARCHITECTURES@"
|
||||
#define VMIME_TARGET_OS "@CMAKE_SYSTEM_NAME@"
|
||||
|
||||
// Set to 1 if debugging should be activated
|
||||
#define VMIME_DEBUG @VMIME_DEBUG@
|
||||
|
||||
// Byte order (set one or the other, but not both!)
|
||||
#define VMIME_BYTE_ORDER_BIG_ENDIAN @VMIME_BYTE_ORDER_BIG_ENDIAN@
|
||||
#define VMIME_BYTE_ORDER_LITTLE_ENDIAN @VMIME_BYTE_ORDER_LITTLE_ENDIAN@
|
||||
|
||||
// Generic types
|
||||
// -- 8-bit
|
||||
typedef signed @VMIME_8BIT_TYPE@ vmime_int8;
|
||||
typedef unsigned @VMIME_8BIT_TYPE@ vmime_uint8;
|
||||
// -- 16-bit
|
||||
typedef signed @VMIME_16BIT_TYPE@ vmime_int16;
|
||||
typedef unsigned @VMIME_16BIT_TYPE@ vmime_uint16;
|
||||
// -- 32-bit
|
||||
typedef signed @VMIME_32BIT_TYPE@ vmime_int32;
|
||||
typedef unsigned @VMIME_32BIT_TYPE@ vmime_uint32;
|
||||
|
||||
// Options
|
||||
// -- File-system support
|
||||
#cmakedefine01 VMIME_HAVE_FILESYSTEM_FEATURES
|
||||
// -- SASL support
|
||||
#cmakedefine01 VMIME_HAVE_SASL_SUPPORT
|
||||
// -- TLS/SSL support
|
||||
#cmakedefine01 VMIME_HAVE_TLS_SUPPORT
|
||||
#cmakedefine01 VMIME_TLS_SUPPORT_LIB_IS_GNUTLS
|
||||
#define VMIME_HAVE_GNUTLS_PRIORITY_FUNCS @VMIME_HAVE_GNUTLS_PRIORITY_FUNCS@
|
||||
// -- Messaging support
|
||||
#cmakedefine01 VMIME_HAVE_MESSAGING_FEATURES
|
||||
// -- Messaging protocols
|
||||
#cmakedefine01 VMIME_HAVE_MESSAGING_PROTO_POP3
|
||||
#cmakedefine01 VMIME_HAVE_MESSAGING_PROTO_SMTP
|
||||
#cmakedefine01 VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
#cmakedefine01 VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
#cmakedefine01 VMIME_HAVE_MESSAGING_PROTO_SENDMAIL
|
||||
// -- Platform-specific code
|
||||
#cmakedefine01 VMIME_PLATFORM_IS_POSIX
|
||||
#cmakedefine01 VMIME_PLATFORM_IS_WINDOWS
|
||||
#cmakedefine01 VMIME_HAVE_PTHREAD
|
||||
#cmakedefine01 VMIME_HAVE_GETADDRINFO
|
||||
|
||||
|
||||
#define VMIME_SENDMAIL_PATH "@VMIME_SENDMAIL_PATH@"
|
||||
|
||||
|
||||
#endif // VMIME_CONFIG_HPP_INCLUDED
|
||||
|
@ -334,6 +334,18 @@ exception* system_error::clone() const { return new system_error(*this); }
|
||||
const char* system_error::name() const throw() { return "system_error"; }
|
||||
|
||||
|
||||
//
|
||||
// malformed_url
|
||||
//
|
||||
|
||||
malformed_url::~malformed_url() throw() {}
|
||||
malformed_url::malformed_url(const string& error, const exception& other)
|
||||
: exception("Malformed URL: " + error + ".", other) {}
|
||||
|
||||
exception* malformed_url::clone() const { return new malformed_url(*this); }
|
||||
const char* malformed_url::name() const throw() { return "malformed_url"; }
|
||||
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
@ -609,18 +621,6 @@ exception* partial_fetch_not_supported::clone() const { return new partial_fetch
|
||||
const char* partial_fetch_not_supported::name() const throw() { return "partial_fetch_not_supported"; }
|
||||
|
||||
|
||||
//
|
||||
// malformed_url
|
||||
//
|
||||
|
||||
malformed_url::~malformed_url() throw() {}
|
||||
malformed_url::malformed_url(const string& error, const exception& other)
|
||||
: net_exception("Malformed URL: " + error + ".", other) {}
|
||||
|
||||
exception* malformed_url::clone() const { return new malformed_url(*this); }
|
||||
const char* malformed_url::name() const throw() { return "malformed_url"; }
|
||||
|
||||
|
||||
//
|
||||
// invalid_folder_name
|
||||
//
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_FILESYSTEM_FEATURES
|
||||
|
||||
|
||||
#include <fstream>
|
||||
#include <sstream>
|
||||
|
||||
@ -211,3 +217,7 @@ void fileAttachment::fileInfo::setSize(const unsigned int& size) { if (m_size) {
|
||||
|
||||
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_FILESYSTEM_FEATURES
|
||||
|
||||
|
@ -29,7 +29,7 @@
|
||||
#ifndef VMIME_BUILDING_DOC
|
||||
|
||||
|
||||
#if VMIME_BUILTIN_MESSAGING_PROTO_POP3
|
||||
#if VMIME_HAVE_MESSAGING_PROTO_POP3
|
||||
#include "vmime/net/pop3/POP3Store.hpp"
|
||||
REGISTER_SERVICE(pop3::POP3Store, pop3, TYPE_STORE);
|
||||
|
||||
@ -40,7 +40,7 @@
|
||||
#endif
|
||||
|
||||
|
||||
#if VMIME_BUILTIN_MESSAGING_PROTO_SMTP
|
||||
#if VMIME_HAVE_MESSAGING_PROTO_SMTP
|
||||
#include "vmime/net/smtp/SMTPTransport.hpp"
|
||||
REGISTER_SERVICE(smtp::SMTPTransport, smtp, TYPE_TRANSPORT);
|
||||
|
||||
@ -51,7 +51,7 @@
|
||||
#endif
|
||||
|
||||
|
||||
#if VMIME_BUILTIN_MESSAGING_PROTO_IMAP
|
||||
#if VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
#include "vmime/net/imap/IMAPStore.hpp"
|
||||
REGISTER_SERVICE(imap::IMAPStore, imap, TYPE_STORE);
|
||||
|
||||
@ -62,12 +62,12 @@
|
||||
#endif
|
||||
|
||||
|
||||
#if VMIME_BUILTIN_MESSAGING_PROTO_MAILDIR
|
||||
#if VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
#include "vmime/net/maildir/maildirStore.hpp"
|
||||
REGISTER_SERVICE(maildir::maildirStore, maildir, TYPE_STORE);
|
||||
#endif
|
||||
|
||||
#if VMIME_BUILTIN_MESSAGING_PROTO_SENDMAIL
|
||||
#if VMIME_HAVE_MESSAGING_PROTO_SENDMAIL
|
||||
#include "vmime/net/sendmail/sendmailTransport.hpp"
|
||||
REGISTER_SERVICE(sendmail::sendmailTransport, sendmail, TYPE_TRANSPORT);
|
||||
#endif
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
|
||||
#include "vmime/net/defaultConnectionInfos.hpp"
|
||||
|
||||
|
||||
@ -50,3 +56,5 @@ port_t defaultConnectionInfos::getPort() const
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
|
||||
#include "vmime/net/events.hpp"
|
||||
#include "vmime/net/folder.hpp"
|
||||
|
||||
@ -113,3 +119,7 @@ void folderEvent::dispatch(folderListener* listener) const
|
||||
} // events
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
|
||||
#include "vmime/net/folder.hpp"
|
||||
|
||||
#include <algorithm>
|
||||
@ -98,3 +104,7 @@ void folder::notifyFolder(const events::folderEvent& event)
|
||||
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
||||
#include "vmime/net/imap/IMAPTag.hpp"
|
||||
#include "vmime/net/imap/IMAPConnection.hpp"
|
||||
#include "vmime/net/imap/IMAPUtils.hpp"
|
||||
@ -727,3 +733,7 @@ ref <const socket> IMAPConnection::getSocket() const
|
||||
} // imap
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
||||
#include "vmime/net/imap/IMAPFolder.hpp"
|
||||
|
||||
#include "vmime/net/imap/IMAPStore.hpp"
|
||||
@ -1936,3 +1942,7 @@ std::vector <int> IMAPFolder::getMessageNumbersStartingOnUID(const message::uid&
|
||||
} // imap
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
||||
#include "vmime/net/imap/IMAPParser.hpp"
|
||||
#include "vmime/net/imap/IMAPMessage.hpp"
|
||||
#include "vmime/net/imap/IMAPFolder.hpp"
|
||||
@ -316,7 +322,7 @@ void IMAPMessage::extractImpl(ref <const part> p, utility::outputStream& os,
|
||||
|
||||
// header + body
|
||||
if ((extractFlags & EXTRACT_HEADER) && (extractFlags & EXTRACT_BODY))
|
||||
*((int *) 0)=42;//throw exceptions::operation_not_supported();
|
||||
throw exceptions::operation_not_supported();
|
||||
// body only
|
||||
else if (extractFlags & EXTRACT_BODY)
|
||||
command << ".TEXT";
|
||||
@ -745,3 +751,6 @@ ref <vmime::message> IMAPMessage::getParsedMessage()
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
||||
#include "vmime/net/imap/IMAPMessagePartContentHandler.hpp"
|
||||
|
||||
#include "vmime/utility/outputStreamAdapter.hpp"
|
||||
@ -186,3 +192,6 @@ bool IMAPMessagePartContentHandler::isBuffered() const
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
||||
#include "vmime/net/imap/IMAPPart.hpp"
|
||||
#include "vmime/net/imap/IMAPStructure.hpp"
|
||||
|
||||
@ -150,3 +156,6 @@ header& IMAPPart::getOrCreateHeader()
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
||||
#include "vmime/net/imap/IMAPSStore.hpp"
|
||||
|
||||
|
||||
@ -67,3 +73,7 @@ const serviceInfos& IMAPSStore::getInfos() const
|
||||
} // imap
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
||||
#include "vmime/net/imap/IMAPServiceInfos.hpp"
|
||||
|
||||
|
||||
@ -126,3 +132,6 @@ const std::vector <serviceInfos::property> IMAPServiceInfos::getAvailablePropert
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
||||
#include "vmime/net/imap/IMAPStore.hpp"
|
||||
#include "vmime/net/imap/IMAPFolder.hpp"
|
||||
#include "vmime/net/imap/IMAPConnection.hpp"
|
||||
@ -237,3 +243,7 @@ const serviceInfos& IMAPStore::getInfos() const
|
||||
} // imap
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
||||
#include "vmime/net/imap/IMAPStructure.hpp"
|
||||
#include "vmime/net/imap/IMAPPart.hpp"
|
||||
|
||||
@ -83,3 +89,6 @@ ref <IMAPStructure> IMAPStructure::emptyStructure()
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
||||
#include "vmime/net/imap/IMAPTag.hpp"
|
||||
|
||||
|
||||
@ -101,3 +107,7 @@ void IMAPTag::generate()
|
||||
} // imap
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
||||
#include "vmime/net/imap/IMAPUtils.hpp"
|
||||
#include "vmime/net/message.hpp"
|
||||
#include "vmime/net/folder.hpp"
|
||||
@ -785,3 +791,7 @@ const message::uid IMAPUtils::makeGlobalUID(const unsigned int UIDValidity, cons
|
||||
} // imap
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
|
||||
|
||||
#include "vmime/net/maildir/format/courierMaildirFormat.hpp"
|
||||
|
||||
#include "vmime/net/maildir/maildirStore.hpp"
|
||||
@ -531,3 +537,6 @@ bool courierMaildirFormat::supports() const
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
|
||||
|
||||
#include "vmime/net/maildir/format/kmailMaildirFormat.hpp"
|
||||
|
||||
#include "vmime/net/maildir/maildirStore.hpp"
|
||||
@ -308,3 +314,6 @@ bool kmailMaildirFormat::supports() const
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
|
||||
|
||||
#include "vmime/net/maildir/maildirFolder.hpp"
|
||||
|
||||
#include "vmime/net/maildir/maildirStore.hpp"
|
||||
@ -1387,3 +1393,7 @@ std::vector <int> maildirFolder::getMessageNumbersStartingOnUID(const message::u
|
||||
} // maildir
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
|
||||
|
||||
#include "vmime/net/maildir/maildirFormat.hpp"
|
||||
#include "vmime/net/maildir/maildirStore.hpp"
|
||||
|
||||
@ -98,3 +104,6 @@ ref <maildirFormat> maildirFormat::detect(ref <maildirStore> store)
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
|
||||
|
||||
#include "vmime/net/maildir/maildirMessage.hpp"
|
||||
#include "vmime/net/maildir/maildirFolder.hpp"
|
||||
#include "vmime/net/maildir/maildirUtils.hpp"
|
||||
@ -543,3 +549,7 @@ ref <vmime::message> maildirMessage::getParsedMessage()
|
||||
} // maildir
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
|
||||
|
||||
#include "vmime/net/maildir/maildirServiceInfos.hpp"
|
||||
|
||||
|
||||
@ -66,3 +72,6 @@ const std::vector <serviceInfos::property> maildirServiceInfos::getAvailableProp
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
|
||||
|
||||
#include "vmime/net/maildir/maildirStore.hpp"
|
||||
|
||||
#include "vmime/net/maildir/maildirFolder.hpp"
|
||||
@ -260,3 +266,7 @@ const serviceInfos& maildirStore::getInfos() const
|
||||
} // maildir
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
|
||||
|
||||
#include "vmime/net/maildir/maildirUtils.hpp"
|
||||
#include "vmime/net/maildir/maildirStore.hpp"
|
||||
|
||||
@ -142,7 +148,7 @@ const utility::file::path::component maildirUtils::buildFilename
|
||||
(const utility::file::path::component& id,
|
||||
const utility::file::path::component& flags)
|
||||
{
|
||||
#if VMIME_BUILTIN_PLATFORM_WINDOWS
|
||||
#if VMIME_PLATFORM_IS_WINDOWS
|
||||
static const char DELIMITER[] = "-";
|
||||
#else
|
||||
static const char DELIMITER[] = ":";
|
||||
@ -229,3 +235,7 @@ bool maildirUtils::messageIdComparator::operator()
|
||||
} // maildir
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
|
||||
#include "vmime/net/message.hpp"
|
||||
|
||||
|
||||
@ -48,3 +54,7 @@ int part::getPartCount() const
|
||||
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_POP3
|
||||
|
||||
|
||||
#include "vmime/net/pop3/POP3Folder.hpp"
|
||||
|
||||
#include "vmime/net/pop3/POP3Store.hpp"
|
||||
@ -864,3 +870,7 @@ std::vector <int> POP3Folder::getMessageNumbersStartingOnUID(const message::uid&
|
||||
} // pop3
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_POP3
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_POP3
|
||||
|
||||
|
||||
#include "vmime/net/pop3/POP3Message.hpp"
|
||||
#include "vmime/net/pop3/POP3Folder.hpp"
|
||||
#include "vmime/net/pop3/POP3Store.hpp"
|
||||
@ -237,3 +243,7 @@ ref <vmime::message> POP3Message::getParsedMessage()
|
||||
} // pop3
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_POP3
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_POP3
|
||||
|
||||
|
||||
#include "vmime/net/pop3/POP3SStore.hpp"
|
||||
|
||||
|
||||
@ -68,3 +74,6 @@ const serviceInfos& POP3SStore::getInfos() const
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_POP3
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_POP3
|
||||
|
||||
|
||||
#include "vmime/net/pop3/POP3ServiceInfos.hpp"
|
||||
|
||||
|
||||
@ -132,3 +138,6 @@ const std::vector <serviceInfos::property> POP3ServiceInfos::getAvailablePropert
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_POP3
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_POP3
|
||||
|
||||
|
||||
#include "vmime/net/pop3/POP3Store.hpp"
|
||||
#include "vmime/net/pop3/POP3Folder.hpp"
|
||||
|
||||
@ -1006,3 +1012,6 @@ const serviceInfos& POP3Store::getInfos() const
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_POP3
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_POP3
|
||||
|
||||
|
||||
#include "vmime/net/pop3/POP3Utils.hpp"
|
||||
|
||||
#include <sstream>
|
||||
@ -72,3 +78,6 @@ void POP3Utils::parseMultiListOrUidlResponse(const string& response, std::map <i
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_POP3
|
||||
|
||||
|
@ -21,12 +21,15 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_SENDMAIL
|
||||
|
||||
|
||||
#include "vmime/net/sendmail/sendmailServiceInfos.hpp"
|
||||
|
||||
|
||||
#if VMIME_BUILTIN_PLATFORM_POSIX
|
||||
|
||||
|
||||
namespace vmime {
|
||||
namespace net {
|
||||
namespace sendmail {
|
||||
@ -71,5 +74,5 @@ const std::vector <serviceInfos::property> sendmailServiceInfos::getAvailablePro
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_BUILTIN_PLATFORM_POSIX
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_SENDMAIL
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_SENDMAIL
|
||||
|
||||
|
||||
#include "vmime/net/sendmail/sendmailTransport.hpp"
|
||||
|
||||
#include "vmime/exception.hpp"
|
||||
@ -48,9 +54,6 @@
|
||||
dynamic_cast <const sendmailServiceInfos&>(getInfos()).getProperties().prop))
|
||||
|
||||
|
||||
#if VMIME_BUILTIN_PLATFORM_POSIX
|
||||
|
||||
|
||||
namespace vmime {
|
||||
namespace net {
|
||||
namespace sendmail {
|
||||
@ -219,4 +222,5 @@ const serviceInfos& sendmailTransport::getInfos() const
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_BUILTIN_PLATFORM_POSIX
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_SENDMAIL
|
||||
|
||||
|
@ -22,6 +22,11 @@
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
|
||||
#include "vmime/net/service.hpp"
|
||||
|
||||
#include "vmime/platform.hpp"
|
||||
@ -141,3 +146,7 @@ ref <timeoutHandlerFactory> service::getTimeoutHandlerFactory()
|
||||
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
|
@ -21,11 +21,16 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
|
||||
#include "vmime/net/serviceFactory.hpp"
|
||||
#include "vmime/net/service.hpp"
|
||||
|
||||
#include "vmime/exception.hpp"
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
#include "src/net/builtinServices.inl"
|
||||
|
||||
@ -134,3 +139,7 @@ void serviceFactory::registerService(ref <registeredService> reg)
|
||||
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
|
||||
#include "vmime/net/serviceInfos.hpp"
|
||||
|
||||
|
||||
@ -156,3 +162,6 @@ int serviceInfos::property::getFlags() const
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
|
||||
#include "vmime/net/session.hpp"
|
||||
#include "vmime/net/serviceFactory.hpp"
|
||||
|
||||
@ -132,3 +138,7 @@ propertySet& session::getProperties()
|
||||
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_SMTP
|
||||
|
||||
|
||||
#include "vmime/net/smtp/SMTPResponse.hpp"
|
||||
|
||||
#include "vmime/platform.hpp"
|
||||
@ -249,3 +255,6 @@ const string SMTPResponse::responseLine::getText() const
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_SMTP
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_SMTP
|
||||
|
||||
|
||||
#include "vmime/net/smtp/SMTPSTransport.hpp"
|
||||
|
||||
|
||||
@ -68,3 +74,6 @@ const serviceInfos& SMTPSTransport::getInfos() const
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_SMTP
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_SMTP
|
||||
|
||||
|
||||
#include "vmime/net/smtp/SMTPServiceInfos.hpp"
|
||||
|
||||
|
||||
@ -129,3 +135,6 @@ const std::vector <serviceInfos::property> SMTPServiceInfos::getAvailablePropert
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_SMTP
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_SMTP
|
||||
|
||||
|
||||
#include "vmime/net/smtp/SMTPTransport.hpp"
|
||||
#include "vmime/net/smtp/SMTPResponse.hpp"
|
||||
|
||||
@ -654,3 +660,7 @@ const serviceInfos& SMTPTransport::getInfos() const
|
||||
} // smtp
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_SMTP
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_TLS_SUPPORT
|
||||
|
||||
|
||||
#include "vmime/net/tls/TLSSecuredConnectionInfos.hpp"
|
||||
#include "vmime/net/tls/TLSSession.hpp"
|
||||
|
||||
@ -61,3 +67,6 @@ ref <const security::cert::certificateChain> TLSSecuredConnectionInfos::getPeerC
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_TLS_SUPPORT
|
||||
|
||||
|
@ -21,12 +21,17 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_TLS_SUPPORT && VMIME_TLS_SUPPORT_LIB_IS_GNUTLS
|
||||
|
||||
|
||||
#include <gnutls/gnutls.h>
|
||||
#if GNUTLS_VERSION_NUMBER < 0x030000
|
||||
#include <gnutls/extra.h>
|
||||
#endif
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
// Dependency on gcrypt is not needed since GNU TLS version 2.12.
|
||||
// See here: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=638651
|
||||
@ -138,7 +143,7 @@ TLSSession::TLSSession(ref <security::cert::certificateVerifier> cv)
|
||||
|
||||
// Sets some default priority on the ciphers, key exchange methods,
|
||||
// macs and compression methods.
|
||||
#if HAVE_GNUTLS_PRIORITY_FUNCS
|
||||
#if VMIME_HAVE_GNUTLS_PRIORITY_FUNCS
|
||||
gnutls_dh_set_prime_bits(*m_gnutlsSession, 128);
|
||||
|
||||
if ((res = gnutls_priority_set_direct
|
||||
@ -152,7 +157,7 @@ TLSSession::TLSSession(ref <security::cert::certificateVerifier> cv)
|
||||
}
|
||||
}
|
||||
|
||||
#else // !HAVE_GNUTLS_PRIORITY_FUNCS
|
||||
#else // !VMIME_HAVE_GNUTLS_PRIORITY_FUNCS
|
||||
|
||||
gnutls_set_default_priority(*m_gnutlsSession);
|
||||
|
||||
@ -228,7 +233,7 @@ TLSSession::TLSSession(ref <security::cert::certificateVerifier> cv)
|
||||
|
||||
gnutls_compression_set_priority(*m_gnutlsSession, compressionPriority);
|
||||
|
||||
#endif // !HAVE_GNUTLS_PRIORITY_FUNCS
|
||||
#endif // !VMIME_HAVE_GNUTLS_PRIORITY_FUNCS
|
||||
|
||||
// Initialize credentials
|
||||
gnutls_credentials_set(*m_gnutlsSession,
|
||||
@ -288,3 +293,6 @@ void TLSSession::throwTLSException(const string& fname, const int code)
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_TLS_SUPPORT && VMIME_TLS_SUPPORT_LIB_IS_GNUTLS
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_TLS_SUPPORT && VMIME_TLS_SUPPORT_LIB_IS_GNUTLS
|
||||
|
||||
|
||||
#include <gnutls/gnutls.h>
|
||||
#include <gnutls/x509.h>
|
||||
|
||||
@ -406,3 +412,6 @@ void TLSSocket::internalThrow()
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_TLS_SUPPORT && VMIME_TLS_SUPPORT_LIB_IS_GNUTLS
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
|
||||
#include "vmime/net/transport.hpp"
|
||||
|
||||
#include "vmime/utility/stream.hpp"
|
||||
@ -135,3 +141,6 @@ transport::Type transport::getType() const
|
||||
} // net
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
|
@ -22,6 +22,10 @@
|
||||
//
|
||||
|
||||
#include "vmime/platform.hpp"
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
#include "vmime/platforms/posix/posixHandler.hpp"
|
||||
#include "vmime/platforms/windows/windowsHandler.hpp"
|
||||
|
||||
|
||||
namespace vmime
|
||||
@ -36,4 +40,40 @@ platform::handler::~handler()
|
||||
}
|
||||
|
||||
|
||||
// static
|
||||
ref <platform::handler> platform::getDefaultHandler()
|
||||
{
|
||||
|
||||
#if VMIME_PLATFORM_IS_WINDOWS
|
||||
return vmime::create <platforms::windows::windowsHandler>();
|
||||
#elif VMIME_PLATFORM_IS_POSIX
|
||||
return vmime::create <platforms::posix::posixHandler>();
|
||||
#else
|
||||
return NULL;
|
||||
#endif
|
||||
|
||||
}
|
||||
|
||||
|
||||
// static
|
||||
ref <platform::handler> platform::getHandler()
|
||||
{
|
||||
// If a custom platform handler is installed, return it
|
||||
if (sm_handler)
|
||||
return sm_handler;
|
||||
|
||||
// Else, use the default handler for this platform
|
||||
ref <handler> defaultHandler = getDefaultHandler();
|
||||
|
||||
if (defaultHandler)
|
||||
{
|
||||
sm_handler = defaultHandler;
|
||||
return sm_handler;
|
||||
}
|
||||
|
||||
// Oops... no platform handler!
|
||||
throw exceptions::no_platform_handler();
|
||||
}
|
||||
|
||||
|
||||
} // vmime
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_PLATFORM_IS_POSIX && VMIME_HAVE_FILESYSTEM_FEATURES
|
||||
|
||||
|
||||
#include "vmime/platforms/posix/posixChildProcess.hpp"
|
||||
#include "vmime/platforms/posix/posixFile.hpp"
|
||||
|
||||
@ -394,3 +400,6 @@ void posixChildProcess::waitForFinish()
|
||||
} // platforms
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_PLATFORM_IS_POSIX && VMIME_HAVE_FILESYSTEM_FEATURES
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_PLATFORM_IS_POSIX && VMIME_HAVE_FILESYSTEM_FEATURES
|
||||
|
||||
|
||||
#include "vmime/platforms/posix/posixFile.hpp"
|
||||
|
||||
#include <unistd.h>
|
||||
@ -38,9 +44,6 @@
|
||||
#include "vmime/exception.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_FILESYSTEM_FEATURES
|
||||
|
||||
|
||||
namespace vmime {
|
||||
namespace platforms {
|
||||
namespace posix {
|
||||
@ -621,4 +624,4 @@ void posixFileSystemFactory::reportError(const vmime::utility::path& path, const
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_FILESYSTEM_FEATURES
|
||||
#endif // VMIME_PLATFORM_IS_POSIX && VMIME_HAVE_FILESYSTEM_FEATURES
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_PLATFORM_IS_POSIX
|
||||
|
||||
|
||||
#include "vmime/platforms/posix/posixHandler.hpp"
|
||||
|
||||
#include <time.h>
|
||||
@ -258,3 +264,6 @@ void posixHandler::wait() const
|
||||
} // posix
|
||||
} // platforms
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_PLATFORM_IS_POSIX
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_PLATFORM_IS_POSIX && VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
|
||||
#include "vmime/platforms/posix/posixSocket.hpp"
|
||||
#include "vmime/platforms/posix/posixHandler.hpp"
|
||||
|
||||
@ -37,9 +43,6 @@
|
||||
#include "vmime/exception.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
|
||||
namespace vmime {
|
||||
namespace platforms {
|
||||
namespace posix {
|
||||
@ -493,4 +496,4 @@ ref <vmime::net::socket> posixSocketFactory::create(ref <vmime::net::timeoutHand
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES
|
||||
#endif // VMIME_PLATFORM_IS_POSIX && VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_PLATFORM_IS_WINDOWS && VMIME_HAVE_FILESYSTEM_FEATURES
|
||||
|
||||
|
||||
#include "vmime/platforms/windows/windowsFile.hpp"
|
||||
|
||||
#include <windows.h>
|
||||
@ -30,9 +36,6 @@
|
||||
#include "vmime/utility/stringUtils.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_FILESYSTEM_FEATURES
|
||||
|
||||
|
||||
namespace vmime {
|
||||
namespace platforms {
|
||||
namespace windows {
|
||||
@ -546,4 +549,5 @@ void windowsFileWriterOutputStream::flush()
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_FILESYSTEM_FEATURES
|
||||
#endif // VMIME_PLATFORM_IS_WINDOWS && VMIME_HAVE_FILESYSTEM_FEATURES
|
||||
|
||||
|
@ -21,9 +21,14 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/platforms/windows/windowsHandler.hpp"
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_PLATFORM_IS_WINDOWS
|
||||
|
||||
|
||||
#include "vmime/platforms/windows/windowsHandler.hpp"
|
||||
|
||||
#include <time.h>
|
||||
#include <locale.h>
|
||||
#include <process.h>
|
||||
@ -270,3 +275,7 @@ void windowsHandler::wait() const
|
||||
} // posix
|
||||
} // platforms
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_PLATFORM_IS_WINDOWS
|
||||
|
||||
|
@ -21,13 +21,18 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_PLATFORM_IS_WINDOWS && VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
|
||||
#pragma warning(disable: 4267)
|
||||
|
||||
#include "vmime/platforms/windows/windowsSocket.hpp"
|
||||
|
||||
#include "vmime/exception.hpp"
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
namespace vmime {
|
||||
namespace platforms {
|
||||
@ -193,4 +198,5 @@ ref <vmime::net::socket> windowsSocketFactory::create(ref <vmime::net::timeoutHa
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES
|
||||
#endif // VMIME_PLATFORM_IS_WINDOWS && VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
|
||||
#include "vmime/security/defaultAuthenticator.hpp"
|
||||
|
||||
#include "vmime/net/service.hpp"
|
||||
@ -104,3 +110,6 @@ weak_ref <net::service> defaultAuthenticator::getService() const
|
||||
} // security
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_SASL_SUPPORT
|
||||
|
||||
|
||||
#include <sstream>
|
||||
|
||||
#include <gsasl.h>
|
||||
@ -197,3 +203,6 @@ const string SASLContext::getErrorMessage(const string& fname, const int code)
|
||||
} // security
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_SASL_SUPPORT
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_SASL_SUPPORT
|
||||
|
||||
|
||||
#include <stdexcept>
|
||||
#include <new>
|
||||
|
||||
@ -133,3 +139,6 @@ bool SASLMechanismFactory::isMechanismSupported(const string& name) const
|
||||
} // security
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_SASL_SUPPORT
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_SASL_SUPPORT
|
||||
|
||||
|
||||
#include <sstream>
|
||||
|
||||
#include <gsasl.h>
|
||||
@ -181,3 +187,6 @@ int SASLSession::gsaslCallback
|
||||
} // security
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_SASL_SUPPORT
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_SASL_SUPPORT
|
||||
|
||||
|
||||
#include "vmime/security/sasl/SASLSocket.hpp"
|
||||
#include "vmime/security/sasl/SASLSession.hpp"
|
||||
|
||||
@ -175,3 +181,6 @@ void SASLSocket::sendRaw(const char* buffer, const size_type count)
|
||||
} // security
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_SASL_SUPPORT
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_SASL_SUPPORT
|
||||
|
||||
|
||||
#include <gsasl.h>
|
||||
|
||||
#include "vmime/security/sasl/builtinSASLMechanism.hpp"
|
||||
@ -184,3 +190,6 @@ void builtinSASLMechanism::decode
|
||||
} // security
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_SASL_SUPPORT
|
||||
|
||||
|
@ -21,6 +21,12 @@
|
||||
// the GNU General Public License cover the whole combination.
|
||||
//
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_SASL_SUPPORT
|
||||
|
||||
|
||||
#include "vmime/security/sasl/defaultSASLAuthenticator.hpp"
|
||||
|
||||
#include "vmime/security/sasl/SASLMechanism.hpp"
|
||||
@ -141,3 +147,6 @@ ref <SASLMechanism> defaultSASLAuthenticator::getSASLMechanism() const
|
||||
} // security
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_SASL_SUPPORT
|
||||
|
||||
|
@ -116,8 +116,8 @@ utility::stream::size_type uuEncoder::encode(utility::inputStream& in,
|
||||
const unsigned char c3 = static_cast <unsigned char>(inBuffer[i + 2]);
|
||||
|
||||
outBuffer[j] = UUENCODE(c1 >> 2);
|
||||
outBuffer[j + 1] = UUENCODE((c1 << 4) & 060 | (c2 >> 4) & 017);
|
||||
outBuffer[j + 2] = UUENCODE((c2 << 2) & 074 | (c3 >> 6) & 03);
|
||||
outBuffer[j + 1] = UUENCODE(((c1 << 4) & 060) | ((c2 >> 4) & 017));
|
||||
outBuffer[j + 2] = UUENCODE(((c2 << 2) & 074) | ((c3 >> 6) & 03));
|
||||
outBuffer[j + 3] = UUENCODE(c3 & 077);
|
||||
}
|
||||
|
||||
@ -173,7 +173,7 @@ utility::stream::size_type uuEncoder::decode(utility::inputStream& in,
|
||||
const utility::stream::size_type outLength = UUDECODE(lengthChar);
|
||||
const utility::stream::size_type inLength =
|
||||
std::min((outLength * 4) / 3, static_cast <utility::stream::size_type>(64));
|
||||
utility::stream::value_type inPos = 0;
|
||||
utility::stream::size_type inPos = 0;
|
||||
|
||||
switch (lengthChar)
|
||||
{
|
||||
@ -302,9 +302,9 @@ utility::stream::size_type uuEncoder::decode(utility::inputStream& in,
|
||||
switch (n)
|
||||
{
|
||||
default:
|
||||
case 3: outBuffer[j + 2] = UUDECODE(c3) << 6 | UUDECODE(c4);
|
||||
case 2: outBuffer[j + 1] = UUDECODE(c2) << 4 | UUDECODE(c3) >> 2;
|
||||
case 1: outBuffer[j] = UUDECODE(c1) << 2 | UUDECODE(c2) >> 4;
|
||||
case 3: outBuffer[j + 2] = static_cast <unsigned char>(UUDECODE(c3) << 6 | UUDECODE(c4));
|
||||
case 2: outBuffer[j + 1] = static_cast <unsigned char>(UUDECODE(c2) << 4 | UUDECODE(c3) >> 2);
|
||||
case 1: outBuffer[j] = static_cast <unsigned char>(UUDECODE(c1) << 2 | UUDECODE(c2) >> 4);
|
||||
case 0: break;
|
||||
}
|
||||
|
||||
|
@ -78,7 +78,7 @@ namespace vmime
|
||||
}
|
||||
|
||||
template <typename T, size_t N>
|
||||
inline size_t count(T const (&array)[N])
|
||||
inline size_t count(T const (&/* array */)[N])
|
||||
{
|
||||
return (N);
|
||||
}
|
||||
|
@ -362,6 +362,21 @@ public:
|
||||
};
|
||||
|
||||
|
||||
/** The URL is malformed.
|
||||
*/
|
||||
|
||||
class malformed_url : public vmime::exception
|
||||
{
|
||||
public:
|
||||
|
||||
malformed_url(const string& error, const exception& other = NO_EXCEPTION);
|
||||
~malformed_url() throw();
|
||||
|
||||
exception* clone() const;
|
||||
const char* name() const throw();
|
||||
};
|
||||
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
@ -727,21 +742,6 @@ public:
|
||||
};
|
||||
|
||||
|
||||
/** The URL is malformed.
|
||||
*/
|
||||
|
||||
class malformed_url : public net_exception
|
||||
{
|
||||
public:
|
||||
|
||||
malformed_url(const string& error, const exception& other = NO_EXCEPTION);
|
||||
~malformed_url() throw();
|
||||
|
||||
exception* clone() const;
|
||||
const char* name() const throw();
|
||||
};
|
||||
|
||||
|
||||
/** Folder name is invalid.
|
||||
*/
|
||||
|
||||
|
@ -25,8 +25,13 @@
|
||||
#define VMIME_FILEATTACHMENT_HPP_INCLUDED
|
||||
|
||||
|
||||
#include "vmime/defaultAttachment.hpp"
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_FILESYSTEM_FEATURES
|
||||
|
||||
|
||||
#include "vmime/defaultAttachment.hpp"
|
||||
#include "vmime/dateTime.hpp"
|
||||
|
||||
|
||||
@ -185,4 +190,6 @@ private:
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_FILESYSTEM_FEATURES
|
||||
|
||||
#endif // VMIME_FILEATTACHMENT_HPP_INCLUDED
|
||||
|
@ -25,6 +25,12 @@
|
||||
#define VMIME_NET_CONNECTIONINFOS_HPP_INCLUDED
|
||||
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
|
||||
#include "vmime/object.hpp"
|
||||
|
||||
|
||||
@ -56,5 +62,7 @@ public:
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
#endif // VMIME_NET_CONNECTIONINFOS_HPP_INCLUDED
|
||||
|
||||
|
@ -25,6 +25,12 @@
|
||||
#define VMIME_NET_DEFAULTCONNECTIONINFOS_HPP_INCLUDED
|
||||
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
|
||||
#include "vmime/net/connectionInfos.hpp"
|
||||
|
||||
|
||||
@ -54,5 +60,7 @@ private:
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
#endif // VMIME_NET_DEFAULTCONNECTIONINFOS_HPP_INCLUDED
|
||||
|
||||
|
@ -25,6 +25,12 @@
|
||||
#define VMIME_NET_EVENTS_HPP_INCLUDED
|
||||
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
|
||||
#include <vector>
|
||||
|
||||
#include "vmime/utility/path.hpp"
|
||||
@ -230,4 +236,6 @@ public:
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
#endif // VMIME_NET_EVENTS_HPP_INCLUDED
|
||||
|
@ -25,6 +25,12 @@
|
||||
#define VMIME_NET_FOLDER_HPP_INCLUDED
|
||||
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
|
||||
#include <vector>
|
||||
|
||||
#include "vmime/types.hpp"
|
||||
@ -434,4 +440,6 @@ private:
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES
|
||||
|
||||
#endif // VMIME_NET_FOLDER_HPP_INCLUDED
|
||||
|
@ -27,6 +27,10 @@
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
||||
#include "vmime/net/socket.hpp"
|
||||
#include "vmime/net/timeoutHandler.hpp"
|
||||
#include "vmime/net/session.hpp"
|
||||
@ -141,4 +145,6 @@ private:
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
#endif // VMIME_NET_IMAP_IMAPCONNECTION_HPP_INCLUDED
|
||||
|
@ -25,6 +25,12 @@
|
||||
#define VMIME_NET_IMAP_IMAPFOLDER_HPP_INCLUDED
|
||||
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
||||
#include <vector>
|
||||
#include <map>
|
||||
|
||||
@ -167,4 +173,6 @@ private:
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
#endif // VMIME_NET_IMAP_IMAPFOLDER_HPP_INCLUDED
|
||||
|
@ -25,6 +25,12 @@
|
||||
#define VMIME_NET_IMAP_IMAPMESSAGE_HPP_INCLUDED
|
||||
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
||||
#include "vmime/net/message.hpp"
|
||||
#include "vmime/net/folder.hpp"
|
||||
|
||||
@ -137,4 +143,6 @@ private:
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
#endif // VMIME_NET_IMAP_IMAPMESSAGE_HPP_INCLUDED
|
||||
|
@ -25,6 +25,12 @@
|
||||
#define VMIME_NET_IMAP_IMAPMESSAGEPARTCONTENTHANDLER_HPP_INCLUDED
|
||||
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
||||
#include "vmime/contentHandler.hpp"
|
||||
#include "vmime/net/imap/IMAPMessage.hpp"
|
||||
|
||||
@ -71,5 +77,7 @@ private:
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
#endif // VMIME_NET_IMAP_IMAPMESSAGEPARTCONTENTHANDLER_HPP_INCLUDED
|
||||
|
||||
|
@ -25,6 +25,12 @@
|
||||
#define VMIME_NET_IMAP_IMAPPARSER_HPP_INCLUDED
|
||||
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
||||
#include "vmime/base.hpp"
|
||||
#include "vmime/dateTime.hpp"
|
||||
#include "vmime/charset.hpp"
|
||||
@ -5200,4 +5206,6 @@ public:
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
#endif // VMIME_NET_IMAP_IMAPPARSER_HPP_INCLUDED
|
||||
|
@ -25,6 +25,12 @@
|
||||
#define VMIME_NET_IMAP_IMAPPART_HPP_INCLUDED
|
||||
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
||||
#include "vmime/net/message.hpp"
|
||||
|
||||
#include "vmime/net/imap/IMAPParser.hpp"
|
||||
@ -84,5 +90,7 @@ private:
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
#endif // VMIME_NET_IMAP_IMAPPART_HPP_INCLUDED
|
||||
|
||||
|
@ -25,6 +25,12 @@
|
||||
#define VMIME_NET_IMAP_IMAPSSTORE_HPP_INCLUDED
|
||||
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
||||
#include "vmime/net/imap/IMAPStore.hpp"
|
||||
|
||||
|
||||
@ -59,5 +65,7 @@ private:
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
#endif // VMIME_NET_IMAP_IMAPSSTORE_HPP_INCLUDED
|
||||
|
||||
|
@ -26,6 +26,11 @@
|
||||
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
||||
#include "vmime/net/serviceInfos.hpp"
|
||||
|
||||
|
||||
@ -80,5 +85,7 @@ private:
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
#endif // VMIME_NET_IMAP_IMAPSERVICEINFOS_HPP_INCLUDED
|
||||
|
||||
|
@ -27,6 +27,10 @@
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
||||
#include "vmime/net/store.hpp"
|
||||
#include "vmime/net/socket.hpp"
|
||||
#include "vmime/net/folder.hpp"
|
||||
@ -110,4 +114,6 @@ protected:
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
#endif // VMIME_NET_IMAP_IMAPSTORE_HPP_INCLUDED
|
||||
|
@ -25,6 +25,12 @@
|
||||
#define VMIME_NET_IMAP_IMAPSTRUCTURE_HPP_INCLUDED
|
||||
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
||||
#include "vmime/net/message.hpp"
|
||||
|
||||
#include "vmime/net/imap/IMAPParser.hpp"
|
||||
@ -63,5 +69,7 @@ private:
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
#endif // VMIME_NET_IMAP_IMAPSTRUCTURE_HPP_INCLUDED
|
||||
|
||||
|
@ -25,6 +25,12 @@
|
||||
#define VMIME_NET_IMAP_IMAPTAG_HPP_INCLUDED
|
||||
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
||||
#include "vmime/types.hpp"
|
||||
|
||||
|
||||
@ -67,4 +73,6 @@ private:
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
#endif // VMIME_NET_IMAP_IMAPTAG_HPP_INCLUDED
|
||||
|
@ -25,6 +25,12 @@
|
||||
#define VMIME_NET_IMAP_IMAPUTILS_HPP_INCLUDED
|
||||
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
|
||||
#include "vmime/types.hpp"
|
||||
#include "vmime/dateTime.hpp"
|
||||
|
||||
@ -146,4 +152,6 @@ private:
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_IMAP
|
||||
|
||||
#endif // VMIME_NET_IMAP_IMAPUTILS_HPP_INCLUDED
|
||||
|
@ -25,6 +25,12 @@
|
||||
#define VMIME_NET_MAILDIR_FORMAT_COURIERMAILDIRFORMAT_HPP_INCLUDED
|
||||
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
|
||||
|
||||
#include "vmime/net/maildir/maildirFormat.hpp"
|
||||
|
||||
|
||||
@ -109,5 +115,7 @@ protected:
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
|
||||
#endif // VMIME_NET_MAILDIR_FORMAT_COURIERMAILDIRFORMAT_HPP_INCLUDED
|
||||
|
||||
|
@ -25,6 +25,12 @@
|
||||
#define VMIME_NET_MAILDIR_FORMAT_KMAILMAILDIRFORMAT_HPP_INCLUDED
|
||||
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
|
||||
|
||||
#include "vmime/net/maildir/maildirFormat.hpp"
|
||||
|
||||
|
||||
@ -96,5 +102,8 @@ protected:
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
|
||||
|
||||
#endif // VMIME_NET_MAILDIR_FORMAT_KMAILMAILDIRFORMAT_HPP_INCLUDED
|
||||
|
||||
|
@ -25,6 +25,12 @@
|
||||
#define VMIME_NET_MAILDIR_MAILDIRFOLDER_HPP_INCLUDED
|
||||
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
|
||||
|
||||
#include <vector>
|
||||
#include <map>
|
||||
|
||||
@ -187,4 +193,6 @@ private:
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
|
||||
#endif // VMIME_NET_MAILDIR_MAILDIRFOLDER_HPP_INCLUDED
|
||||
|
@ -25,6 +25,12 @@
|
||||
#define VMIME_NET_MAILDIR_FORMAT_MAILDIRFORMAT_HPP_INCLUDED
|
||||
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
|
||||
|
||||
#include "vmime/net/folder.hpp"
|
||||
|
||||
#include "vmime/utility/file.hpp"
|
||||
@ -183,5 +189,7 @@ private:
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
|
||||
#endif // VMIME_NET_MAILDIR_FORMAT_MAILDIRFORMAT_HPP_INCLUDED
|
||||
|
||||
|
@ -25,6 +25,12 @@
|
||||
#define VMIME_NET_MAILDIR_MAILDIRMESSAGE_HPP_INCLUDED
|
||||
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
|
||||
|
||||
#include "vmime/net/message.hpp"
|
||||
#include "vmime/net/folder.hpp"
|
||||
|
||||
@ -106,4 +112,6 @@ private:
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
|
||||
#endif // VMIME_NET_MAILDIR_MAILDIRMESSAGE_HPP_INCLUDED
|
||||
|
@ -26,6 +26,11 @@
|
||||
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
|
||||
|
||||
#include "vmime/net/serviceInfos.hpp"
|
||||
|
||||
|
||||
@ -60,5 +65,7 @@ public:
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
|
||||
#endif // VMIME_NET_MAILDIR_MAILDIRSERVICEINFOS_HPP_INCLUDED
|
||||
|
||||
|
@ -27,6 +27,10 @@
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
|
||||
|
||||
#include "vmime/net/store.hpp"
|
||||
#include "vmime/net/socket.hpp"
|
||||
#include "vmime/net/folder.hpp"
|
||||
@ -111,4 +115,6 @@ private:
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
|
||||
#endif // VMIME_NET_MAILDIR_MAILDIRSTORE_HPP_INCLUDED
|
||||
|
@ -25,6 +25,12 @@
|
||||
#define VMIME_NET_MAILDIR_MAILDIRUTILS_HPP_INCLUDED
|
||||
|
||||
|
||||
#include "vmime/config.hpp"
|
||||
|
||||
|
||||
#if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
|
||||
|
||||
#include "vmime/utility/file.hpp"
|
||||
#include "vmime/utility/path.hpp"
|
||||
|
||||
@ -131,4 +137,6 @@ public:
|
||||
} // vmime
|
||||
|
||||
|
||||
#endif // VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_MESSAGING_PROTO_MAILDIR
|
||||
|
||||
#endif // VMIME_NET_MAILDIR_MAILDIRUTILS_HPP_INCLUDED
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user