Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit99818b5

Browse files
committed
Conflicts:libs/network/test/CMakeLists.txt
2 parentsfa84259 +1b50308 commit99818b5

File tree

906 files changed

+46759
-47077
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

906 files changed

+46759
-47077
lines changed

‎.gitignore‎

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
*.cmake
21
*.swp
32
*.pyc
43
CMakeCache.txt
@@ -8,3 +7,10 @@ Testing
87
*.gch
98
libs/mime/test/mime-roundtrip
109
*.a
10+
bin/
11+
tests/
12+
_build
13+
CPP-NETLIB.*
14+
CMakeScripts/
15+
*.cmake
16+
*~

‎.gitmodules‎

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
[submodule "deps/gtest"]
2+
path=deps/gtest
3+
url=git://github.com/cpp-netlib/gtest
4+
[submodule "uri"]
5+
path=uri
6+
url=git://github.com/cpp-netlib/uri
7+
[submodule "deps/gmock"]
8+
path=deps/gmock
9+
url=git://github.com/cpp-netlib/gmock

‎CMakeLists.txt‎

Lines changed: 157 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,166 @@
1-
# Copyright (c) Dean Michael Berris 2010.
1+
# Copyright (c) Dean Michael Berris 2010.
2+
# Copyright (c) Google, Inc. 2012.
23
# Distributed under the Boost Software License, Version 1.0.
3-
#(See accompanying file LICENSE_1_0.txt or copy at
4-
#http://www.boost.org/LICENSE_1_0.txt)
4+
# (See accompanying file LICENSE_1_0.txt or copy at
5+
# http://www.boost.org/LICENSE_1_0.txt)
56

6-
cmake_minimum_required(VERSION 2.6)
7+
cmake_minimum_required(VERSION 2.8)
78
project(CPP-NETLIB)
8-
find_package( Boost 1.41.0 )
9+
10+
option( CPP-NETLIB_BUILD_SHARED_LIBS"Build cpp-netlib as shared libraries."OFF )
11+
option( CPP-NETLIB_BUILD_SINGLE_LIB"Build cpp-netlib into a single library"OFF )
12+
option( CPP-NETLIB_BUILD_TESTS"Build the unit tests."ON )
13+
option( CPP-NETLIB_BUILD_EXAMPLES"Build the examples using cpp-netlib."ON )
14+
option( CPP-NETLIB_ALWAYS_LOGGING"Allow cpp-netlib to log debug messages even in non-debug mode."OFF )
15+
option( CPP-NETLIB_DISABLE_LOGGING"Disable logging definitely, no logging code will be generated or compiled."OFF )
16+
option( CPP-NETLIB_DISABLE_LIBCXX"Disable using libc++ when compiling with clang."OFF )
17+
18+
19+
set(CMAKE_MODULE_PATH${CMAKE_CURRENT_SOURCE_DIR})
20+
find_package( ICU )
21+
22+
if(CPP-NETLIB_BUILD_SHARED_LIBSORBUILD_SHARED_LIBS)
23+
set(Boost_USE_STATIC_LIBSOFF)
24+
set(CPP-NETLIB_BUILD_SHARED_LIBSON)
25+
set(BUILD_SHARED_LIBSON)
26+
else()
27+
set(Boost_USE_STATIC_LIBSON)
28+
set(CPP-NETLIB_BUILD_SHARED_LIBSOFF)
29+
set(BUILD_SHARED_LIBSOFF)
30+
endif()
31+
set(Boost_USE_MULTITHREADEDON)
32+
set(Boost_COMPONENTSsystemregex date_time filesystem program_options )
33+
find_package( Boost 1.51 REQUIRED${Boost_COMPONENTS} )
34+
find_package( OpenSSL )
35+
find_package( Threads )
936
set(CMAKE_VERBOSE_MAKEFILEtrue)
1037

11-
if (CMAKE_BUILD_TYPEMATCHES Debug)
12-
add_definitions(-DBOOST_NETWORK_DEBUG)
38+
if(CMAKE_BUILD_TYPEMATCHES Debug)
39+
add_definitions(-DNETWORK_DEBUG)
40+
endif()
41+
42+
43+
44+
if (OPENSSL_FOUND)
45+
add_definitions(-DNETWORK_ENABLE_HTTPS)
1346
endif()
14-
47+
48+
if (${CMAKE_CXX_COMPILER_ID}MATCHES GNU)
49+
INCLUDE(CheckCXXCompilerFlag)
50+
CHECK_CXX_COMPILER_FLAG(-std=c++11 HAVE_STD11)
51+
if (HAVE_STD11)
52+
set(CMAKE_CXX_FLAGS${CMAKE_CXX_FLAGS}"-std=c++11 -Wall")
53+
else()
54+
message(FATAL_ERROR"No advanced standard C++ support (-std=c++11 not defined).")
55+
endif()
56+
elseif(${CMAKE_CXX_COMPILER_ID}MATCHES Clang)
57+
INCLUDE(CheckCXXCompilerFlag)
58+
CHECK_CXX_COMPILER_FLAG(-std=c++11 HAVE_STD11)
59+
if (HAVE_STD11)
60+
if (CPP-NETLIB_DISABLE_LIBCXX)
61+
set(CMAKE_CXX_FLAGS"${CMAKE_CXX_FLAGS} -std=c++11 -Wall")
62+
else()
63+
set(CMAKE_CXX_FLAGS"${CMAKE_CXX_FLAGS} -std=c++11 -stdlib=libc++ -Wall")
64+
set(CMAKE_CXX_LINK_FLAGS"${CMAKE_CXX_LINK_FLAGS} -stdlib=libc++")
65+
endif()
66+
else()
67+
message(FATAL_ERROR"No C++11 support for Clang version. Please upgrade Clang to a version supporting C++11.")
68+
endif()
69+
add_definitions(
70+
-DASIO_HAS_MOVE -DASIO_HAS_VARIADIC_TEMPLATES -DASIO_HAS_STD_SYSTEM_ERROR
71+
-DASIO_ERROR_CATEGORY_NOEXCEPT=noexcept -DASIO_HAS_STD_ARRAY
72+
-DASIO_HAS_STD_SHARED_PTR -DASIO_HAS_STD_ATOMIC -DASIO_HAS_STD_CHRONO
73+
-DASIO_HAS_STD_ADDRESSOFF -DASIO_HAS_STD_FUNCTION -DASIO_HAS_STD_TYPE_TRAITS)
74+
endif()
75+
76+
message("C++ Compiler ID:${CMAKE_CXX_COMPILER_ID}")
77+
message("C++ Flags:${CMAKE_CXX_FLAGS} link flags:${CMAKE_CXX_LINK_FLAGS}")
1578
if (Boost_FOUND)
16-
set(Boost_USE_STATIC_LIBSON)
17-
set(Boost_USE_MULTI_THREADEDON)
18-
include_directories(${Boost_INCLUDE_DIRS})
79+
if (MSVC)
80+
add_definitions(-D_SCL_SECURE_NO_WARNINGS)
81+
endif(MSVC)
82+
if (WIN32)
83+
add_definitions(-D_WIN32_WINNT=0x0501)
84+
endif(WIN32)
85+
include_directories(${Boost_INCLUDE_DIRS})
86+
endif(Boost_FOUND)
87+
88+
message(STATUS"CPP-NETLIB options selected:")
89+
message(STATUS" CPP-NETLIB_BUILD_SHARED_LIBS: ${CPP-NETLIB_BUILD_SHARED_LIBS}\t(Build cpp-netlib as shared libraries: OFF, ON)")
90+
message(STATUS" CPP-NETLIB_BUILD_SINGLE_LIB: ${CPP-NETLIB_BUILD_SINGLE_LIB}\t(Build cpp-netlib into a single library: OFF, ON)")
91+
message(STATUS" CPP-NETLIB_BUILD_TESTS: ${CPP-NETLIB_BUILD_TESTS}\t(Build the unit tests: ON, OFF)")
92+
message(STATUS" CPP-NETLIB_BUILD_EXAMPLES: ${CPP-NETLIB_BUILD_EXAMPLES}\t(Build the examples using cpp-netlib: ON, OFF)")
93+
message(STATUS" CPP-NETLIB_ALWAYS_LOGGING: ${CPP-NETLIB_ALWAYS_LOGGING}\t(Allow cpp-netlib to log debug messages even in non-debug mode: ON, OFF)")
94+
message(STATUS" CPP-NETLIB_DISABLE_LOGGING: ${CPP-NETLIB_DISABLE_LOGGING}\t(Disable logging definitely, no logging code will be generated or compiled: ON, OFF)")
95+
message(STATUS" CPP-NETLIB_DISABLE_LIBCXX: ${CPP-NETLIB_DISABLE_LIBCXX}\t(Disable using libc++ when building with clang: ON, OFF)")
96+
message(STATUS"CMake build options selected:")
97+
98+
############################################################################
99+
#
100+
# The code following this point is for the new directory structure
101+
#
102+
103+
if(CPP-NETLIB_BUILD_TESTS)
104+
enable_testing()
105+
if(MSVC11)
106+
add_definitions(-D_VARIADIC_MAX=10)
107+
endif(MSVC11)
108+
109+
if(MSVC)
110+
set(gtest_force_shared_crtONCACHEBOOL"Override gtest option.")
111+
endif(MSVC)
112+
113+
# gmock automatically searches for gtest
114+
add_subdirectory(deps/gmock)
115+
116+
set(GTEST_ROOT ${CPP-NETLIB_SOURCE_DIR}/deps/gtest)
117+
set(GTEST_FOUNDON)
118+
set(GTEST_INCLUDE_DIRS${GTEST_ROOT}/include)
119+
set(GTEST_LIBRARIES gtest)
120+
set(GTEST_MAIN_LIBRARIES gtest_main)
121+
set(GTEST_BOTH_LIBRARIES${GTEST_LIBRARIES}${GTEST_MAIN_LIBRARIES})
122+
123+
set(GMOCK_ROOT ${CPP-NETLIB_SOURCE_DIR}/deps/gmock)
124+
set(GMOCK_FOUNDON)
125+
set(GMOCK_INCLUDE_DIRS${GTEST_INCLUDE_DIRS} {${GMOCK_DIR}/include)
126+
set(GMOCK_LIBRARIES {$GTEST_LIBRARIES} gmock)
127+
set(GMOCK_MAIN_LIBRARIES gmock_main)
128+
set(GMOCK_BOTH_LIBRARIES${GMOCK_LIBRARIES}${GMOCK_MAIN_LIBRARIES})
129+
endif()
130+
131+
if(CPP-NETLIB_BUILD_SINGLE_LIB)
132+
include_directories(
133+
${CMAKE_CURRENT_SOURCE_DIR}/concurrency/src
134+
${CMAKE_CURRENT_SOURCE_DIR}/http/src
135+
${CMAKE_CURRENT_SOURCE_DIR}/logging/src
136+
${CMAKE_CURRENT_SOURCE_DIR}/message/src
137+
${CMAKE_CURRENT_SOURCE_DIR}/uri/src
138+
)
19139
endif()
20-
enable_testing()
21-
add_subdirectory(libs/network/src)
22-
add_subdirectory(libs/network/test)
23-
add_subdirectory(libs/mime/test)
24-
add_subdirectory(libs/network/example)
25140

141+
add_subdirectory(uri)
142+
add_subdirectory(message)
143+
add_subdirectory(logging)
144+
add_subdirectory(concurrency)
145+
add_subdirectory(http)
146+
#add_subdirectory(mime)
147+
if(CPP-NETLIB_BUILD_EXAMPLES)
148+
add_subdirectory(contrib/http_examples)
149+
endif()
150+
151+
if(CPP-NETLIB_BUILD_SINGLE_LIB)
152+
add_library(cppnetlib
153+
${Uri_SRCS}
154+
${CPP-NETLIB_MESSAGE_SRCS}
155+
${CPP-NETLIB_MESSAGE_DIRECTIVES_SRCS}
156+
${CPP-NETLIB_MESSAGE_WRAPPERS_SRCS}
157+
${CPP-NETLIB_LOGGING_SRCS}
158+
${CPP-NETLIB_HTTP_CLIENT_SRCS}
159+
${CPP-NETLIB_HTTP_CLIENT_CONNECTIONS_SRCS}
160+
${CPP-NETLIB_HTTP_MESSAGE_SRCS}
161+
${CPP-NETLIB_HTTP_MESSAGE_WRAPPERS_SRCS}
162+
${CPP-NETLIB_CONSTANTS_SRCS}
163+
${CPP-NETLIB_CONCURRENCY_SRCS}
164+
)
165+
target_link_libraries(cppnetlib${Boost_LIBRARIES})
166+
endif()

‎FindICU.cmake‎

Lines changed: 97 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,97 @@
1+
# Finds the International Components for Unicode (ICU) Library
2+
#
3+
# ICU_FOUND - True if ICU found.
4+
# ICU_I18N_FOUND - True if ICU's internationalization library found.
5+
# ICU_INCLUDE_DIRS - Directory to include to get ICU headers
6+
# Note: always include ICU headers as, e.g.,
7+
# unicode/utypes.h
8+
# ICU_LIBRARIES - Libraries to link against for the common ICU
9+
# ICU_I18N_LIBRARIES - Libraries to link against for ICU internationaliation
10+
# (note: in addition to ICU_LIBRARIES)
11+
12+
# Look for the header file.
13+
find_path(
14+
ICU_INCLUDE_DIR
15+
NAMES unicode/utypes.h
16+
DOC"Include directory for the ICU library")
17+
mark_as_advanced(ICU_INCLUDE_DIR)
18+
19+
# Look for the library.
20+
find_library(
21+
ICU_LIBRARY
22+
NAMES icuuc cygicuuc cygicuuc32
23+
DOC"Libraries to link against for the common parts of ICU")
24+
mark_as_advanced(ICU_LIBRARY)
25+
26+
# Copy the results to the output variables.
27+
if(ICU_INCLUDE_DIRAND ICU_LIBRARY)
28+
set(ICU_FOUND 1)
29+
set(ICU_LIBRARIES${ICU_LIBRARY})
30+
set(ICU_INCLUDE_DIRS${ICU_INCLUDE_DIR})
31+
32+
set(ICU_VERSION 0)
33+
set(ICU_MAJOR_VERSION 0)
34+
set(ICU_MINOR_VERSION 0)
35+
if (EXISTS"${ICU_INCLUDE_DIR}/unicode/uvernum.h")
36+
FILE(READ"${ICU_INCLUDE_DIR}/unicode/uvernum.h" _ICU_VERSION_CONENTS)
37+
else()
38+
FILE(READ"${ICU_INCLUDE_DIR}/unicode/uversion.h" _ICU_VERSION_CONENTS)
39+
endif()
40+
41+
STRING(REGEX REPLACE".*#define U_ICU_VERSION_MAJOR_NUM ([0-9]+).*""\\1" ICU_MAJOR_VERSION"${_ICU_VERSION_CONENTS}")
42+
STRING(REGEX REPLACE".*#define U_ICU_VERSION_MINOR_NUM ([0-9]+).*""\\1" ICU_MINOR_VERSION"${_ICU_VERSION_CONENTS}")
43+
44+
set(ICU_VERSION"${ICU_MAJOR_VERSION}.${ICU_MINOR_VERSION}")
45+
46+
# Look for the ICU internationalization libraries
47+
find_library(
48+
ICU_I18N_LIBRARY
49+
NAMES icuin icui18n cygicuin cygicuin32
50+
DOC"Libraries to link against for ICU internationalization")
51+
mark_as_advanced(ICU_I18N_LIBRARY)
52+
if (ICU_I18N_LIBRARY)
53+
set(ICU_I18N_FOUND 1)
54+
set(ICU_I18N_LIBRARIES${ICU_I18N_LIBRARY})
55+
else (ICU_I18N_LIBRARY)
56+
set(ICU_I18N_FOUND 0)
57+
set(ICU_I18N_LIBRARIES)
58+
endif (ICU_I18N_LIBRARY)
59+
60+
# Look for the ICU data libraries
61+
find_library(
62+
ICU_DATA_LIBRARY
63+
NAMES icudata cygicudata cygicudata32
64+
DOC"Libraries to link against for ICU data")
65+
mark_as_advanced(ICU_DATA_LIBRARY)
66+
if (ICU_DATA_LIBRARY)
67+
set(ICU_DATA_FOUND 1)
68+
set(ICU_DATA_LIBRARIES${ICU_DATA_LIBRARY})
69+
else (ICU_DATA_LIBRARY)
70+
set(ICU_DATA_FOUND 0)
71+
set(ICU_DATA_LIBRARIES)
72+
endif (ICU_DATA_LIBRARY)
73+
else(ICU_INCLUDE_DIRAND ICU_LIBRARY)
74+
set(ICU_FOUND 0)
75+
set(ICU_I18N_FOUND 0)
76+
set(ICU_DATA_FOUND 0)
77+
set(ICU_LIBRARIES)
78+
set(ICU_I18N_LIBRARIES)
79+
set(ICU_DATA_LIBRARIES)
80+
set(ICU_INCLUDE_DIRS)
81+
set(ICU_VERSION)
82+
set(ICU_MAJOR_VERSION)
83+
set(ICU_MINOR_VERSION)
84+
endif(ICU_INCLUDE_DIRAND ICU_LIBRARY)
85+
86+
IF(ICU_FOUND)
87+
IF(NOT ICU_FIND_QUIETLY )
88+
MESSAGE(STATUS"Found ICU header files in${ICU_INCLUDE_DIRS}")
89+
MESSAGE(STATUS"Found ICU libraries:${ICU_LIBRARIES}")
90+
ENDIF(NOT ICU_FIND_QUIETLY )
91+
ELSE(ICU_FOUND)
92+
IF(ICU_FIND_REQUIRED)
93+
MESSAGE( FATAL_ERROR"Could not find ICU" )
94+
ELSE(ICU_FIND_REQUIRED)
95+
MESSAGE(STATUS"Optional package ICU was not found" )
96+
ENDIF(ICU_FIND_REQUIRED)
97+
ENDIF(ICU_FOUND)

‎Jamroot‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
import os ;
88

9-
local BOOST_ROOT= [ os.environ BOOST_ROOT ] ;
9+
path-constant BOOST_ROOT: [ os.environ BOOST_ROOT ] ;
1010

1111
use-project /boost : $(BOOST_ROOT) ;
1212
use-project /cpp-netlib : libs/network/build ;

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp