Author: shuston Date: Sun Feb 22 00:27:37 2015 New Revision: 1661450 URL: http://svn.apache.org/r1661450 Log: Replace non-Apache licensed CheckSizeTNativeType.cmake with ASF-licensed and more correct for our needs, CheckSizetDistinct.cmake. Resolves QPID-6312.
Added: qpid/trunk/qpid/cpp/CMakeModules/CheckSizetDistinct.cmake (with props) Removed: qpid/trunk/qpid/cpp/CMakeModules/CheckSizeTNativeType.cmake Modified: qpid/trunk/qpid/cpp/src/CMakeLists.txt qpid/trunk/qpid/cpp/src/config.h.cmake qpid/trunk/qpid/cpp/src/qpid/Options.cpp Added: qpid/trunk/qpid/cpp/CMakeModules/CheckSizetDistinct.cmake URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/CMakeModules/CheckSizetDistinct.cmake?rev=1661450&view=auto ============================================================================== --- qpid/trunk/qpid/cpp/CMakeModules/CheckSizetDistinct.cmake (added) +++ qpid/trunk/qpid/cpp/CMakeModules/CheckSizetDistinct.cmake Sun Feb 22 00:27:37 2015 @@ -0,0 +1,56 @@ +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# + +# This module checks to see if size_t is a distinct type from the other +# integer types already set up in IntegerTypes.h. + +INCLUDE (CheckCXXSourceCompiles) + +FUNCTION (check_size_t_distinct VARIABLE) + # No need to check if we already did. If you want to re-run, clear it + # from the cache. + if ("${VARIABLE}" MATCHES "^${VARIABLE}$") + message (STATUS "Checking to see if size_t is a distinct type") + set (CMAKE_REQUIRED_QUIET ON) + set (CMAKE_REQUIRED_INCLUDES "${CMAKE_SOURCE_DIR}/include") + CHECK_CXX_SOURCE_COMPILES ( +" +#include <iostream> +#include \"qpid/sys/IntegerTypes.h\" +// Define functions that will fail to compile if size_t is the same as +// one of the int types defined in IntegerTypes.h +int foo(int16_t) { return 1; } +int foo(int32_t) { return 2; } +int foo(int64_t) { return 3; } +int foo(uint16_t) { return 4; } +int foo(uint32_t) { return 5; } +int foo(uint64_t) { return 6; } +int foo(size_t) { return 7; } +int main (int, char *[]) { + return 0; +} +" + ${VARIABLE}) + if (${VARIABLE}) + message (STATUS "Checking to see if size_t is a distinct type - yes") + else (${VARIABLE}) + message (STATUS "Checking to see if size_t is a distinct type - no") + endif (${VARIABLE}) + endif ("${VARIABLE}" MATCHES "^${VARIABLE}$") +ENDFUNCTION (check_size_t_distinct VARIABLE) Propchange: qpid/trunk/qpid/cpp/CMakeModules/CheckSizetDistinct.cmake ------------------------------------------------------------------------------ svn:executable = * Modified: qpid/trunk/qpid/cpp/src/CMakeLists.txt URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/CMakeLists.txt?rev=1661450&r1=1661449&r2=1661450&view=diff ============================================================================== --- qpid/trunk/qpid/cpp/src/CMakeLists.txt (original) +++ qpid/trunk/qpid/cpp/src/CMakeLists.txt Sun Feb 22 00:27:37 2015 @@ -42,7 +42,7 @@ include(CheckIncludeFiles) include(CheckIncludeFileCXX) include(CheckLibraryExists) include(CheckSymbolExists) -include(CheckSizeTNativeType) +include(CheckSizetDistinct) find_package(PkgConfig) find_package(Ruby) @@ -351,7 +351,7 @@ if (NOT CMAKE_SYSTEM_NAME STREQUAL Windo mark_as_advanced(QPID_POLLER) endif (NOT CMAKE_SYSTEM_NAME STREQUAL Windows) -check_size_t_native_type (QPID_SIZE_T_NATIVE) +check_size_t_distinct (QPID_SIZE_T_DISTINCT) option(BUILD_SASL "Build with Cyrus SASL support" ${SASL_FOUND}) if (BUILD_SASL) Modified: qpid/trunk/qpid/cpp/src/config.h.cmake URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/config.h.cmake?rev=1661450&r1=1661449&r2=1661450&view=diff ============================================================================== --- qpid/trunk/qpid/cpp/src/config.h.cmake (original) +++ qpid/trunk/qpid/cpp/src/config.h.cmake Sun Feb 22 00:27:37 2015 @@ -56,7 +56,7 @@ #cmakedefine HAVE_SYS_SDT_H ${HAVE_SYS_SDT_H} #cmakedefine HAVE_LOG_AUTHPRIV #cmakedefine HAVE_LOG_FTP -#cmakedefine QPID_SIZE_T_NATIVE +#cmakedefine QPID_SIZE_T_DISTINCT #cmakedefine HAVE_PROTON_TRACER #cmakedefine USE_PROTON_TRANSPORT_CONDITION #cmakedefine HAVE_PROTON_EVENTS Modified: qpid/trunk/qpid/cpp/src/qpid/Options.cpp URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/Options.cpp?rev=1661450&r1=1661449&r2=1661450&view=diff ============================================================================== --- qpid/trunk/qpid/cpp/src/qpid/Options.cpp (original) +++ qpid/trunk/qpid/cpp/src/qpid/Options.cpp Sun Feb 22 00:27:37 2015 @@ -146,7 +146,7 @@ template QPID_COMMON_EXTERN po::value_se template QPID_COMMON_EXTERN po::value_semantic* create_value(uint16_t& val, const std::string& arg); template QPID_COMMON_EXTERN po::value_semantic* create_value(uint32_t& val, const std::string& arg); template QPID_COMMON_EXTERN po::value_semantic* create_value(uint64_t& val, const std::string& arg); -#ifdef QPID_SIZE_T_NATIVE +#ifdef QPID_SIZE_T_DISTINCT template QPID_COMMON_EXTERN po::value_semantic* create_value(size_t& val, const std::string& arg); #endif template QPID_COMMON_EXTERN po::value_semantic* create_value(double& val, const std::string& arg); --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org