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

Improve build system#281

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Merged
deanberris merged 3 commits intocpp-netlib:masterfromniosHD:improve-build-system
Aug 7, 2013
Merged
Show file tree
Hide file tree
Changes fromall commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 15 additions & 2 deletionsCMakeLists.txt
View file
Open in desktop
Original file line numberDiff line numberDiff line change
Expand Up@@ -70,8 +70,8 @@ elseif(${CMAKE_CXX_COMPILER_ID} MATCHES Clang)
-DASIO_HAS_STD_ADDRESSOFF -DASIO_HAS_STD_FUNCTION -DASIO_HAS_STD_TYPE_TRAITS)
endif()

message("C++ Compiler ID: ${CMAKE_CXX_COMPILER_ID}")
message("C++ Flags: ${CMAKE_CXX_FLAGS} link flags: ${CMAKE_CXX_LINK_FLAGS}")
message(STATUS"C++ Compiler ID: ${CMAKE_CXX_COMPILER_ID}")
message(STATUS"C++ Flags: ${CMAKE_CXX_FLAGS} link flags: ${CMAKE_CXX_LINK_FLAGS}")
if (Boost_FOUND)
if (MSVC)
add_definitions(-D_SCL_SECURE_NO_WARNINGS)
Expand All@@ -92,6 +92,17 @@ message(STATUS " CPP-NETLIB_DISABLE_LOGGING: ${CPP-NETLIB_DISABLE_LOGGING}\t(
message(STATUS " CPP-NETLIB_DISABLE_LIBCXX: ${CPP-NETLIB_DISABLE_LIBCXX}\t(Disable using libc++ when building with clang: ON, OFF)")
message(STATUS "CMake build options selected:")

# Takes one or more lists as parameter and prepends the prefix to every element.
function(prependToElements prefix)
foreach(list ${ARGN} ) # iterate over lists
set(newlist "")
foreach(ele ${${list}} ) # iterate over the elements
set(newlist ${newlist} "${prefix}${ele}")
endforeach(ele)
set(${list} ${newlist} PARENT_SCOPE) # replace the original list
endforeach(list)
endfunction(prependToElements)

############################################################################
#
# The code following this point is for the new directory structure
Expand DownExpand Up@@ -133,6 +144,7 @@ if(CPP-NETLIB_BUILD_SINGLE_LIB)
${CMAKE_CURRENT_SOURCE_DIR}/logging/src
${CMAKE_CURRENT_SOURCE_DIR}/message/src
${CMAKE_CURRENT_SOURCE_DIR}/uri/src
${CMAKE_CURRENT_SOURCE_DIR}
)
endif()

Expand All@@ -155,6 +167,7 @@ if(CPP-NETLIB_BUILD_SINGLE_LIB)
${CPP-NETLIB_LOGGING_SRCS}
${CPP-NETLIB_HTTP_CLIENT_SRCS}
${CPP-NETLIB_HTTP_CLIENT_CONNECTIONS_SRCS}
${CPP-NETLIB_HTTP_SERVER_SRCS}
${CPP-NETLIB_HTTP_MESSAGE_SRCS}
${CPP-NETLIB_HTTP_MESSAGE_WRAPPERS_SRCS}
${CPP-NETLIB_CONSTANTS_SRCS}
Expand Down
8 changes: 7 additions & 1 deletionconcurrency/src/CMakeLists.txt
View file
Open in desktop
Original file line numberDiff line numberDiff line change
Expand Up@@ -5,10 +5,16 @@

include_directories(${CPP-NETLIB_SOURCE_DIR}/concurrency/src)

set(CPP-NETLIB_CONCURRENCY_SRCS ${CMAKE_CURRENT_SOURCE_DIR}/thread_pool.cpp)
set(CPP-NETLIB_CONCURRENCY_SRCS
thread_pool.cpp)

if(NOT CPP-NETLIB_BUILD_SINGLE_LIB)
add_library(cppnetlib-concurrency ${CPP-NETLIB_CONCURRENCY_SRCS})
endif()

# prepend current directory to make paths absolute
prependToElements( "${CMAKE_CURRENT_SOURCE_DIR}/"
CPP-NETLIB_CONCURRENCY_SRCS )

# propagate sources to parent directory for one-lib-build
set(CPP-NETLIB_CONCURRENCY_SRCS ${CPP-NETLIB_CONCURRENCY_SRCS} PARENT_SCOPE)
3 changes: 2 additions & 1 deletioncontrib/http_examples/CMakeLists.txt
View file
Open in desktop
Original file line numberDiff line numberDiff line change
Expand Up@@ -13,7 +13,8 @@ if (OPENSSL_FOUND)
include_directories(${OPENSSL_INCLUDE_DIR})
endif (OPENSSL_FOUND)

if( NOT CPP-NETLIB_DISABLE_LOGGING )
set( CPP-NETLIB_LOGGING_LIB "" )
if( NOT CPP-NETLIB_DISABLE_LOGGING AND NOT CPP-NETLIB_BUILD_SINGLE_LIB)
set( CPP-NETLIB_LOGGING_LIB cppnetlib-logging )
endif()

Expand Down
1 change: 1 addition & 0 deletionshttp/CMakeLists.txt
View file
Open in desktop
Original file line numberDiff line numberDiff line change
Expand Up@@ -15,4 +15,5 @@ set(CPP-NETLIB_HTTP_MESSAGE_SRCS ${CPP-NETLIB_HTTP_MESSAGE_SRCS} PARENT_SCOPE)
set(CPP-NETLIB_HTTP_MESSAGE_WRAPPERS_SRCS ${CPP-NETLIB_HTTP_MESSAGE_WRAPPERS_SRCS} PARENT_SCOPE)
set(CPP-NETLIB_HTTP_CLIENT_CONNECTIONS_SRCS ${CPP-NETLIB_HTTP_CLIENT_CONNECTIONS_SRCS} PARENT_SCOPE)
set(CPP-NETLIB_HTTP_CLIENT_SRCS ${CPP-NETLIB_HTTP_CLIENT_SRCS} PARENT_SCOPE)
set(CPP-NETLIB_HTTP_SERVER_SRCS ${CPP-NETLIB_HTTP_SERVER_SRCS} PARENT_SCOPE)
set(CPP-NETLIB_CONSTANTS_SRCS ${CPP-NETLIB_CONSTANTS_SRCS} PARENT_SCOPE)
53 changes: 36 additions & 17 deletionshttp/src/CMakeLists.txt
View file
Open in desktop
Original file line numberDiff line numberDiff line change
Expand Up@@ -19,8 +19,9 @@ include_directories(${OPENSSL_INCLUDE_DIR})
endif()

set(CPP-NETLIB_HTTP_MESSAGE_SRCS
${CMAKE_CURRENT_SOURCE_DIR}/http/request.cpp
${CMAKE_CURRENT_SOURCE_DIR}/http/response.cpp)
http/request.cpp
http/response.cpp)

if(NOT CPP-NETLIB_BUILD_SINGLE_LIB)
add_library(cppnetlib-http-message ${CPP-NETLIB_HTTP_MESSAGE_SRCS})
add_dependencies(cppnetlib-http-message
Expand All@@ -30,41 +31,49 @@ if(NOT CPP-NETLIB_BUILD_SINGLE_LIB)
cppnetlib-message)
endif()

set(CPP-NETLIB_HTTP_MESSAGE_WRAPPERS_SRCS ${CMAKE_CURRENT_SOURCE_DIR}/http/message/wrappers.cpp)
set(CPP-NETLIB_HTTP_MESSAGE_WRAPPERS_SRCS
http/message/wrappers.cpp)

if(NOT CPP-NETLIB_BUILD_SINGLE_LIB)
add_library(cppnetlib-http-message-wrappers ${CPP-NETLIB_HTTP_MESSAGE_WRAPPERS_SRCS})
endif()

set(CPP-NETLIB_HTTP_CLIENT_CONNECTIONS_SRCS
${CMAKE_CURRENT_SOURCE_DIR}/http/client_connections.cpp
${CMAKE_CURRENT_SOURCE_DIR}/http/simple_connection_manager.cpp
${CMAKE_CURRENT_SOURCE_DIR}/http/simple_connection_factory.cpp
${CMAKE_CURRENT_SOURCE_DIR}/http/connection_delegate_factory.cpp
${CMAKE_CURRENT_SOURCE_DIR}/http/client_resolver_delegate.cpp
${CMAKE_CURRENT_SOURCE_DIR}/http/client_resolver_delegate_factory.cpp
${CMAKE_CURRENT_SOURCE_DIR}/http/client_connection_delegates.cpp
${CMAKE_CURRENT_SOURCE_DIR}/http/client_connection_factory.cpp
${CMAKE_CURRENT_SOURCE_DIR}/http/client_async_resolver.cpp
${CMAKE_CURRENT_SOURCE_DIR}/http/client_connection_normal.cpp)
http/client_connections.cpp
http/simple_connection_manager.cpp
http/simple_connection_factory.cpp
http/connection_delegate_factory.cpp
http/client_resolver_delegate.cpp
http/client_resolver_delegate_factory.cpp
http/client_connection_delegates.cpp
http/client_connection_factory.cpp
http/client_async_resolver.cpp
http/client_connection_normal.cpp)

if(NOT CPP-NETLIB_BUILD_SINGLE_LIB)
add_library(cppnetlib-http-client-connections ${CPP-NETLIB_HTTP_CLIENT_CONNECTIONS_SRCS})
endif()

set(CPP-NETLIB_CONSTANTS_SRCS constants.cpp)
set(CPP-NETLIB_CONSTANTS_SRCS
constants.cpp)

if(NOT CPP-NETLIB_BUILD_SINGLE_LIB)
add_library(cppnetlib-constants ${CPP-NETLIB_CONSTANTS_SRCS})
endif()

# Server implementation files.
set(CPP-NETLIB_HTTP_SERVER_SRCS
${CMAKE_CURRENT_SOURCE_DIR}/http/server/session.cpp http/server/simple_sessions.cpp
${CMAKE_CURRENT_SOURCE_DIR}/http/server/dynamic_dispatcher.cpp)
http/server/session.cpp
http/server/simple_sessions.cpp
http/server/dynamic_dispatcher.cpp)

if (NOT CPP-NETLIB_BUILD_SINGLE_LIB)
add_library(cppnetlib-http-server ${CPP-NETLIB_HTTP_SERVER_SRCS})
endif()

set(CPP-NETLIB_HTTP_CLIENT_SRCS
${CMAKE_CURRENT_SOURCE_DIR}/http/client.cpp)
http/client.cpp)

if(NOT CPP-NETLIB_BUILD_SINGLE_LIB)
add_library(cppnetlib-http-client ${CPP-NETLIB_HTTP_CLIENT_SRCS})
add_dependencies(cppnetlib-http-client
Expand DownExpand Up@@ -92,9 +101,19 @@ if(NOT CPP-NETLIB_BUILD_SINGLE_LIB)
)
endif()

# prepend current directory to make paths absolute
prependToElements( "${CMAKE_CURRENT_SOURCE_DIR}/"
CPP-NETLIB_HTTP_MESSAGE_SRCS
CPP-NETLIB_HTTP_MESSAGE_WRAPPERS_SRCS
CPP-NETLIB_HTTP_CLIENT_CONNECTIONS_SRCS
CPP-NETLIB_CONSTANTS_SRCS
CPP-NETLIB_HTTP_SERVER_SRCS
CPP-NETLIB_HTTP_CLIENT_SRCS )

# propagate sources to parent directory for one-lib-build
set(CPP-NETLIB_HTTP_MESSAGE_SRCS ${CPP-NETLIB_HTTP_MESSAGE_SRCS} PARENT_SCOPE)
set(CPP-NETLIB_HTTP_MESSAGE_WRAPPERS_SRCS ${CPP-NETLIB_HTTP_MESSAGE_WRAPPERS_SRCS} PARENT_SCOPE)
set(CPP-NETLIB_HTTP_CLIENT_CONNECTIONS_SRCS ${CPP-NETLIB_HTTP_CLIENT_CONNECTIONS_SRCS} PARENT_SCOPE)
set(CPP-NETLIB_HTTP_CLIENT_SRCS ${CPP-NETLIB_HTTP_CLIENT_SRCS} PARENT_SCOPE)
set(CPP-NETLIB_HTTP_SERVER_SRCS ${CPP-NETLIB_HTTP_SERVER_SRCS} PARENT_SCOPE)
set(CPP-NETLIB_CONSTANTS_SRCS ${CPP-NETLIB_CONSTANTS_SRCS} PARENT_SCOPE)
55 changes: 30 additions & 25 deletionshttp/test/CMakeLists.txt
View file
Open in desktop
Original file line numberDiff line numberDiff line change
Expand Up@@ -17,30 +17,41 @@ if (OPENSSL_FOUND)
add_definitions(-DNETWORK_ENABLE_HTTPS)
endif()


set( CPPNETLIB_LIBRARIES cppnetlib )
set( CPPNETLIB_CLIENT_LIBRARIES ${CPPNETLIB_LIBRARIES} )
set( CPPNETLIB_SERVER_LIBRARIES ${CPPNETLIB_LIBRARIES} )
if(NOT CPP-NETLIB_BUILD_SINGLE_LIB)
set( CPPNETLIB_LIBRARIES
cppnetlib-message
cppnetlib-message-wrappers
cppnetlib-http-message
cppnetlib-http-message-wrappers
cppnetlib-uri
cppnetlib-constants )

set( CPPNETLIB_CLIENT_LIBRARIES
${CPPNETLIB_LIBRARIES}
cppnetlib-http-client
cppnetlib-http-client-connections )

set( CPPNETLIB_SERVER_LIBRARIES
cppnetlib-http-server )
endif()


if (CPP-NETLIB_BUILD_TESTS)
# These are the internal (simple) tests.
set (MESSAGE_TESTS request_base_test request_test response_test
response_incremental_parser_test)
foreach ( test ${MESSAGE_TESTS} )
add_executable(cpp-netlib-http-${test} ${test}.cpp)
add_dependencies(cpp-netlib-http-${test}
cppnetlib-message
cppnetlib-message-wrappers
cppnetlib-http-message
cppnetlib-http-message-wrappers
cppnetlib-uri
cppnetlib-constants)
target_link_libraries(cpp-netlib-http-${test}
${Boost_LIBRARIES}
${GTEST_BOTH_LIBRARIES}
${ICU_LIBRARIES} ${ICU_I18N_LIBRARIES}
${CMAKE_THREAD_LIBS_INIT}
cppnetlib-message
cppnetlib-message-wrappers
cppnetlib-http-message
cppnetlib-http-message-wrappers
cppnetlib-uri
cppnetlib-constants)
${CPPNETLIB_LIBRARIES} )
set_target_properties(cpp-netlib-http-${test}
PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CPP-NETLIB_BINARY_DIR}/tests)
add_test(cpp-netlib-http-${test}
Expand All@@ -54,16 +65,8 @@ if (CPP-NETLIB_BUILD_TESTS)
${GTEST_BOTH_LIBRARIES}
${ICU_LIBRARIES} ${ICU_I18N_LIBRARIES}
${CMAKE_THREAD_LIBS_INIT}
cppnetlib-constants
cppnetlib-uri
cppnetlib-message
cppnetlib-message-wrappers
cppnetlib-message-directives
${CPP-NETLIB_LOGGING_LIB}
cppnetlib-http-message
cppnetlib-http-message-wrappers
cppnetlib-http-client
cppnetlib-http-client-connections)
${CPPNETLIB_CLIENT_LIBRARIES} )
if (OPENSSL_FOUND)
target_link_libraries(cpp-netlib-http-client_test ${OPENSSL_LIBRARIES})
endif()
Expand All@@ -77,9 +80,11 @@ if (CPP-NETLIB_BUILD_TESTS)
server_default_connection_manager_test server_test)
foreach (test ${SERVER_TESTS})
add_executable(cpp-netlib-http-${test} ${test}.cpp)
add_dependencies(cpp-netlib-http-${test} cppnetlib-http-server)
target_link_libraries(cpp-netlib-http-${test} ${Boost_LIBRARIES}
${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} cppnetlib-http-server)
target_link_libraries(cpp-netlib-http-${test}
${Boost_LIBRARIES}
${GTEST_BOTH_LIBRARIES}
${CMAKE_THREAD_LIBS_INIT}
${CPPNETLIB_SERVER_LIBRARIES} )
set_target_properties(cpp-netlib-http-${test} PROPERTIES
RUNTIME_OUTPUT_DIRECTORY ${CPP-NETLIB_BINARY_DIR}/tests)
add_test(cpp-netlib-http-${test}
Expand Down
11 changes: 8 additions & 3 deletionslogging/src/CMakeLists.txt
View file
Open in desktop
Original file line numberDiff line numberDiff line change
Expand Up@@ -4,10 +4,15 @@
# http://www.boost.org/LICENSE_1_0.txt)

include_directories(${CPP-NETLIB_SOURCE_DIR}/logging/src ${CPP-NETLIB_SOURCE_DIR})
set(CPP-NETLIB_LOGGING_SRCS logging.cpp)

set(CPP-NETLIB_LOGGING_SRCS
logging.cpp)

add_library(cppnetlib-logging ${CPP-NETLIB_LOGGING_SRCS})
foreach (src_file ${CPP-NETLIB_LOGGING_SRCS})
endforeach(src_file)

# prepend current directory to make paths absolute
prependToElements( "${CMAKE_CURRENT_SOURCE_DIR}/"
CPP-NETLIB_LOGGING_SRCS )

# propagate sources to parent directory for one-lib-build
set(CPP-NETLIB_LOGGING_SRCS ${CPP-NETLIB_LOGGING_SRCS} PARENT_SCOPE)
18 changes: 15 additions & 3 deletionsmessage/src/CMakeLists.txt
View file
Open in desktop
Original file line numberDiff line numberDiff line change
Expand Up@@ -7,17 +7,29 @@

include_directories(${CPP-NETLIB_SOURCE_DIR}/uri/src ${CPP-NETLIB_SOURCE_DIR}/message/src)

set(CPP-NETLIB_MESSAGE_SRCS message.cpp)
set(CPP-NETLIB_MESSAGE_SRCS
message.cpp)

add_library(cppnetlib-message ${CPP-NETLIB_MESSAGE_SRCS})
add_dependencies(cppnetlib-message cppnetlib-uri)
target_link_libraries(cppnetlib-message cppnetlib-uri)

set(CPP-NETLIB_MESSAGE_DIRECTIVES_SRCS directives.cpp)
set(CPP-NETLIB_MESSAGE_DIRECTIVES_SRCS
directives.cpp)

add_library(cppnetlib-message-directives ${CPP-NETLIB_MESSAGE_DIRECTIVES_SRCS})

set(CPP-NETLIB_MESSAGE_WRAPPERS_SRCS wrappers.cpp)
set(CPP-NETLIB_MESSAGE_WRAPPERS_SRCS
wrappers.cpp)

add_library(cppnetlib-message-wrappers ${CPP-NETLIB_MESSAGE_WRAPPERS_SRCS})

# prepend current directory to make paths absolute
prependToElements( "${CMAKE_CURRENT_SOURCE_DIR}/"
CPP-NETLIB_MESSAGE_SRCS
CPP-NETLIB_MESSAGE_DIRECTIVES_SRCS
CPP-NETLIB_MESSAGE_WRAPPERS_SRCS )

# propagate sources to parent directory for one-lib-build
set(CPP-NETLIB_MESSAGE_SRCS ${CPP-NETLIB_MESSAGE_SRCS} PARENT_SCOPE)
set(CPP-NETLIB_MESSAGE_DIRECTIVES_SRCS ${CPP-NETLIB_MESSAGE_DIRECTIVES_SRCS} PARENT_SCOPE)
Expand Down

[8]ページ先頭

©2009-2025 Movatter.jp