mirror of
https://github.com/msgpack/msgpack-c.git
synced 2025-05-29 23:42:40 +02:00
Merge branch 'jen20-cmake-enable-shared'
This commit is contained in:
commit
51dd7cbf22
26
.travis.yml
26
.travis.yml
@ -37,13 +37,13 @@ install:
|
|||||||
|
|
||||||
env:
|
env:
|
||||||
- ACTION="ci/build_autotools.sh" VERSION="cpp03" ARCH="64" LIBPATH="/usr/local/lib" BOOST="boost" BOOST_INC="/usr/local/boost"
|
- ACTION="ci/build_autotools.sh" VERSION="cpp03" ARCH="64" LIBPATH="/usr/local/lib" BOOST="boost" BOOST_INC="/usr/local/boost"
|
||||||
- ACTION="ci/build_autotools.sh" VERSION="cpp03" ARCH="32" LIBPATH="/usr/local/lib32" BOOST=""
|
- ACTION="ci/build_autotools.sh" VERSION="cpp03" ARCH="32" LIBPATH="/usr/local/lib32" BOOST="" BOOST_INC=""
|
||||||
- ACTION="ci/build_cmake.sh" VERSION="cpp11" ARCH="64" LIBPATH="/usr/local/lib" BOOST="boost" BOOST_INC="/usr/local/boost"
|
- ACTION="ci/build_cmake.sh" VERSION="cpp11" ARCH="64" LIBPATH="/usr/local/lib" BOOST="boost" BOOST_INC="/usr/local/boost"
|
||||||
- ACTION="ci/build_cmake.sh" VERSION="cpp11" ARCH="32" LIBPATH="/usr/local/lib32" BOOST=""
|
- ACTION="ci/build_cmake.sh" VERSION="cpp11" ARCH="32" LIBPATH="/usr/local/lib32" BOOST="" BOOST_INC="" SHARED="OFF"
|
||||||
- ACTION="ci/build_autotools.sh" VERSION="cpp11" ARCH="64" LIBPATH="/usr/local/lib" BOOST=""
|
- ACTION="ci/build_autotools.sh" VERSION="cpp11" ARCH="64" LIBPATH="/usr/local/lib" BOOST="" BOOST_INC=""
|
||||||
- ACTION="ci/build_autotools.sh" VERSION="cpp11" ARCH="32" LIBPATH="/usr/local/lib32" BOOST="boost" BOOST_INC="/usr/local/boost"
|
- ACTION="ci/build_autotools.sh" VERSION="cpp11" ARCH="32" LIBPATH="/usr/local/lib32" BOOST="boost" BOOST_INC="/usr/local/boost"
|
||||||
- ACTION="ci/build_cmake.sh" VERSION="cpp03" ARCH="64" LIBPATH="/usr/local/lib" BOOST=""
|
- ACTION="ci/build_cmake.sh" VERSION="cpp03" ARCH="64" LIBPATH="/usr/local/lib" BOOST="" BOOST_INC=""
|
||||||
- ACTION="ci/build_cmake.sh" VERSION="cpp03" ARCH="32" LIBPATH="/usr/local/lib32" BOOST="boost" BOOST_INC="/usr/local/boost"
|
- ACTION="ci/build_cmake.sh" VERSION="cpp03" ARCH="32" LIBPATH="/usr/local/lib32" BOOST="boost" BOOST_INC="/usr/local/boost" SHARED="OFF"
|
||||||
|
|
||||||
before_script:
|
before_script:
|
||||||
- export PATH=/usr/local/bin:$PATH && rm -rf install
|
- export PATH=/usr/local/bin:$PATH && rm -rf install
|
||||||
@ -53,39 +53,39 @@ matrix:
|
|||||||
- os: osx
|
- os: osx
|
||||||
compiler: gcc
|
compiler: gcc
|
||||||
- os: osx
|
- os: osx
|
||||||
env: ACTION="ci/build_autotools.sh" VERSION="cpp03" ARCH="32" LIBPATH="/usr/local/lib32" BOOST=""
|
env: ACTION="ci/build_autotools.sh" VERSION="cpp03" ARCH="32" LIBPATH="/usr/local/lib32" BOOST="" BOOST_INC=""
|
||||||
- os: osx
|
- os: osx
|
||||||
env: ACTION="ci/build_cmake.sh" VERSION="cpp11" ARCH="32" LIBPATH="/usr/local/lib32" BOOST=""
|
env: ACTION="ci/build_cmake.sh" VERSION="cpp11" ARCH="32" LIBPATH="/usr/local/lib32" BOOST="" BOOST_INC="" SHARED="OFF"
|
||||||
- os: osx
|
- os: osx
|
||||||
env: ACTION="ci/build_autotools.sh" VERSION="cpp11" ARCH="32" LIBPATH="/usr/local/lib32" BOOST="boost" BOOST_INC="/usr/local/boost"
|
env: ACTION="ci/build_autotools.sh" VERSION="cpp11" ARCH="32" LIBPATH="/usr/local/lib32" BOOST="boost" BOOST_INC="/usr/local/boost"
|
||||||
- os: osx
|
- os: osx
|
||||||
env: ACTION="ci/build_cmake.sh" VERSION="cpp03" ARCH="32" LIBPATH="/usr/local/lib32" BOOST="boost" BOOST_INC="/usr/local/boost"
|
env: ACTION="ci/build_cmake.sh" VERSION="cpp03" ARCH="32" LIBPATH="/usr/local/lib32" BOOST="boost" BOOST_INC="/usr/local/boost" SHARED="OFF"
|
||||||
|
|
||||||
- os: linux
|
- os: linux
|
||||||
compiler: gcc
|
compiler: gcc
|
||||||
env: ACTION="ci/build_autotools.sh" VERSION="cpp03" ARCH="64" LIBPATH="/usr/local/lib" BOOST="boost" BOOST_INC="/usr/local/boost"
|
env: ACTION="ci/build_autotools.sh" VERSION="cpp03" ARCH="64" LIBPATH="/usr/local/lib" BOOST="boost" BOOST_INC="/usr/local/boost"
|
||||||
- os: linux
|
- os: linux
|
||||||
compiler: gcc
|
compiler: gcc
|
||||||
env: ACTION="ci/build_autotools.sh" VERSION="cpp03" ARCH="32" LIBPATH="/usr/local/lib32" BOOST=""
|
env: ACTION="ci/build_autotools.sh" VERSION="cpp03" ARCH="32" LIBPATH="/usr/local/lib32" BOOST="" BOOST_INC=""
|
||||||
- os: linux
|
- os: linux
|
||||||
compiler: gcc
|
compiler: gcc
|
||||||
env: ACTION="ci/build_cmake.sh" VERSION="cpp11" ARCH="64" LIBPATH="/usr/local/lib" BOOST="boost" BOOST_INC="/usr/local/boost"
|
env: ACTION="ci/build_cmake.sh" VERSION="cpp11" ARCH="64" LIBPATH="/usr/local/lib" BOOST="boost" BOOST_INC="/usr/local/boost"
|
||||||
- os: linux
|
- os: linux
|
||||||
compiler: gcc
|
compiler: gcc
|
||||||
env: ACTION="ci/build_cmake.sh" VERSION="cpp11" ARCH="32" LIBPATH="/usr/local/lib32" BOOST=""
|
env: ACTION="ci/build_cmake.sh" VERSION="cpp11" ARCH="32" LIBPATH="/usr/local/lib32" BOOST="" BOOST_INC="" SHARED="OFF"
|
||||||
|
|
||||||
- os: linux
|
- os: linux
|
||||||
compiler: clang
|
compiler: clang
|
||||||
env: ACTION="ci/build_autotools.sh" VERSION="cpp11" ARCH="64" LIBPATH="/usr/local/lib" BOOST=""
|
env: ACTION="ci/build_autotools.sh" VERSION="cpp11" ARCH="64" LIBPATH="/usr/local/lib" BOOST="" BOOST_INC=""
|
||||||
- os: linux
|
- os: linux
|
||||||
compiler: clang
|
compiler: clang
|
||||||
env: ACTION="ci/build_autotools.sh" VERSION="cpp11" ARCH="32" LIBPATH="/usr/local/lib32" BOOST="boost" BOOST_INC="/usr/local/boost"
|
env: ACTION="ci/build_autotools.sh" VERSION="cpp11" ARCH="32" LIBPATH="/usr/local/lib32" BOOST="boost" BOOST_INC="/usr/local/boost"
|
||||||
- os: linux
|
- os: linux
|
||||||
compiler: clang
|
compiler: clang
|
||||||
env: ACTION="ci/build_cmake.sh" VERSION="cpp03" ARCH="64" LIBPATH="/usr/local/lib" BOOST=""
|
env: ACTION="ci/build_cmake.sh" VERSION="cpp03" ARCH="64" LIBPATH="/usr/local/lib" BOOST="" BOOST_INC=""
|
||||||
- os: linux
|
- os: linux
|
||||||
compiler: clang
|
compiler: clang
|
||||||
env: ACTION="ci/build_cmake.sh" VERSION="cpp03" ARCH="32" LIBPATH="/usr/local/lib32" BOOST="boost" BOOST_INC="/usr/local/boost"
|
env: ACTION="ci/build_cmake.sh" VERSION="cpp03" ARCH="32" LIBPATH="/usr/local/lib32" BOOST="boost" BOOST_INC="/usr/local/boost" SHARED="OFF"
|
||||||
|
|
||||||
script:
|
script:
|
||||||
- git clean -xdf && CMAKE_LIBRARY_PATH=${LIBPATH} ${ACTION} ${VERSION} ${ARCH} ${BOOST} ${BOOST_INC}
|
- git clean -xdf && CMAKE_LIBRARY_PATH=${LIBPATH} ${ACTION} ${VERSION} ${ARCH} ${BOOST} ${BOOST_INC}
|
||||||
|
@ -89,6 +89,7 @@ IF (GTEST_FOUND AND ZLIB_FOUND AND THREADS_FOUND)
|
|||||||
ENDIF ()
|
ENDIF ()
|
||||||
|
|
||||||
OPTION (MSGPACK_ENABLE_CXX "Enable C++ interface." ON)
|
OPTION (MSGPACK_ENABLE_CXX "Enable C++ interface." ON)
|
||||||
|
OPTION (MSGPACK_ENABLE_SHARED "Build shared libaries in addition to static libraries." ON)
|
||||||
|
|
||||||
INCLUDE (CheckCXXSourceCompiles)
|
INCLUDE (CheckCXXSourceCompiles)
|
||||||
CHECK_CXX_SOURCE_COMPILES ("
|
CHECK_CXX_SOURCE_COMPILES ("
|
||||||
@ -227,10 +228,12 @@ INCLUDE_DIRECTORIES (
|
|||||||
${CMAKE_CURRENT_BINARY_DIR}/include/
|
${CMAKE_CURRENT_BINARY_DIR}/include/
|
||||||
)
|
)
|
||||||
|
|
||||||
ADD_LIBRARY (msgpack SHARED
|
IF (MSGPACK_ENABLE_SHARED)
|
||||||
${msgpack_SOURCES}
|
ADD_LIBRARY (msgpack SHARED
|
||||||
${msgpack_HEADERS}
|
${msgpack_SOURCES}
|
||||||
)
|
${msgpack_HEADERS}
|
||||||
|
)
|
||||||
|
ENDIF ()
|
||||||
|
|
||||||
ADD_LIBRARY (msgpack-static STATIC
|
ADD_LIBRARY (msgpack-static STATIC
|
||||||
${msgpack_SOURCES}
|
${msgpack_SOURCES}
|
||||||
@ -238,8 +241,10 @@ ADD_LIBRARY (msgpack-static STATIC
|
|||||||
)
|
)
|
||||||
|
|
||||||
SET_TARGET_PROPERTIES (msgpack-static PROPERTIES OUTPUT_NAME "msgpack")
|
SET_TARGET_PROPERTIES (msgpack-static PROPERTIES OUTPUT_NAME "msgpack")
|
||||||
SET_TARGET_PROPERTIES (msgpack PROPERTIES IMPORT_SUFFIX "_import.lib")
|
IF (MSGPACK_ENABLE_SHARED)
|
||||||
SET_TARGET_PROPERTIES (msgpack PROPERTIES SOVERSION 3 VERSION 4.0.0)
|
SET_TARGET_PROPERTIES (msgpack PROPERTIES IMPORT_SUFFIX "_import.lib")
|
||||||
|
SET_TARGET_PROPERTIES (msgpack PROPERTIES SOVERSION 3 VERSION 4.0.0)
|
||||||
|
ENDIF ()
|
||||||
|
|
||||||
IF (MSGPACK_BUILD_TESTS)
|
IF (MSGPACK_BUILD_TESTS)
|
||||||
ENABLE_TESTING ()
|
ENABLE_TESTING ()
|
||||||
@ -251,7 +256,9 @@ IF (MSGPACK_BUILD_TESTS)
|
|||||||
ENDIF ()
|
ENDIF ()
|
||||||
|
|
||||||
IF ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
|
IF ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
|
||||||
SET_PROPERTY (TARGET msgpack APPEND_STRING PROPERTY COMPILE_FLAGS "-Wall -Wextra -Wno-mismatched-tags -Werror -g -O3 -DPIC")
|
IF (MSGPACK_ENABLE_SHARED)
|
||||||
|
SET_PROPERTY (TARGET msgpack APPEND_STRING PROPERTY COMPILE_FLAGS "-Wall -Wextra -Wno-mismatched-tags -Werror -g -O3 -DPIC")
|
||||||
|
ENDIF ()
|
||||||
SET_PROPERTY (TARGET msgpack-static APPEND_STRING PROPERTY COMPILE_FLAGS "-Wall -Wextra -Wno-mismatched-tags -Werror -g -O3" )
|
SET_PROPERTY (TARGET msgpack-static APPEND_STRING PROPERTY COMPILE_FLAGS "-Wall -Wextra -Wno-mismatched-tags -Werror -g -O3" )
|
||||||
ENDIF ()
|
ENDIF ()
|
||||||
IF ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC")
|
IF ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC")
|
||||||
@ -272,7 +279,13 @@ ENDIF ()
|
|||||||
|
|
||||||
ADD_SUBDIRECTORY (example)
|
ADD_SUBDIRECTORY (example)
|
||||||
|
|
||||||
INSTALL (TARGETS msgpack msgpack-static DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
IF (MSGPACK_ENABLE_SHARED)
|
||||||
|
SET (MSGPACK_INSTALLTARGETS msgpack msgpack-static)
|
||||||
|
ELSE()
|
||||||
|
SET (MSGPACK_INSTALLTARGETS msgpack-static)
|
||||||
|
ENDIF ()
|
||||||
|
|
||||||
|
INSTALL (TARGETS ${MSGPACK_INSTALLTARGETS} DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
||||||
INSTALL (DIRECTORY include DESTINATION ${CMAKE_INSTALL_PREFIX})
|
INSTALL (DIRECTORY include DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||||
IF (NOT MSVC)
|
IF (NOT MSVC)
|
||||||
INSTALL (FILES ${CMAKE_CURRENT_BINARY_DIR}/msgpack.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
|
INSTALL (FILES ${CMAKE_CURRENT_BINARY_DIR}/msgpack.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
|
||||||
|
@ -44,7 +44,14 @@ else
|
|||||||
boost_dir=""
|
boost_dir=""
|
||||||
fi
|
fi
|
||||||
|
|
||||||
cmake $cpp11 $bit32 $boost $boost_dir ..
|
if [ "$5" = "OFF" ]
|
||||||
|
then
|
||||||
|
shared="-DMSGPACK_ENABLE_SHARED=OFF"
|
||||||
|
else
|
||||||
|
shared=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
cmake $cpp11 $bit32 $boost $boost_dir $shared ..
|
||||||
|
|
||||||
ret=$?
|
ret=$?
|
||||||
if [ $ret -ne 0 ]
|
if [ $ret -ne 0 ]
|
||||||
|
@ -53,6 +53,12 @@ IF (MSGPACK_CXX11)
|
|||||||
)
|
)
|
||||||
ENDIF ()
|
ENDIF ()
|
||||||
|
|
||||||
|
IF (MSGPACK_ENABLE_SHARED)
|
||||||
|
SET (MSGPACK_TEST_LIB msgpack)
|
||||||
|
ELSE ()
|
||||||
|
SET (MSGPACK_TEST_LIB msgpack-static)
|
||||||
|
ENDIF ()
|
||||||
|
|
||||||
FOREACH (source_file ${check_PROGRAMS})
|
FOREACH (source_file ${check_PROGRAMS})
|
||||||
GET_FILENAME_COMPONENT (source_file_we ${source_file} NAME_WE)
|
GET_FILENAME_COMPONENT (source_file_we ${source_file} NAME_WE)
|
||||||
ADD_EXECUTABLE (
|
ADD_EXECUTABLE (
|
||||||
@ -60,7 +66,7 @@ FOREACH (source_file ${check_PROGRAMS})
|
|||||||
${source_file}
|
${source_file}
|
||||||
)
|
)
|
||||||
TARGET_LINK_LIBRARIES (${source_file_we}
|
TARGET_LINK_LIBRARIES (${source_file_we}
|
||||||
msgpack
|
${MSGPACK_TEST_LIB}
|
||||||
${GTEST_BOTH_LIBRARIES}
|
${GTEST_BOTH_LIBRARIES}
|
||||||
${ZLIB_LIBRARIES}
|
${ZLIB_LIBRARIES}
|
||||||
${CMAKE_THREAD_LIBS_INIT}
|
${CMAKE_THREAD_LIBS_INIT}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user