Hi,

On Thursday, October 2, 2014 11:59:10 AM UTC-6, David Irvine wrote:
>
> Should say, I am happy with pure GPL / BSD on these cmake files, so if you 
> have a github repo I can add and do a pull request with a gpl header if 
> that helps. 
>

Thanks for the reply. For Homebrew, the CMake changes need to be an 
upstream contribution to Crypto++ project, i.e. only 'official' upstream 
patches (approved or pending) can be included in a formula. So, in that 
regard, the license should match the Crypto++ project's.

For Homebrew formulae, there is no per-package directory, e.g. nothing to 
fork to do a PR against. The pending CMakeLists.txt file would be a 
resource, probably pulled from a gist at github.com into the temp 
directory, during the build phase. I would use the same gist to post the 
contribution upstream to Crypto++ project. Your open source license would 
remain, with any changes I might make noted as a revision.

Regards,

Larry
 

> On Thu, Oct 2, 2014 at 6:57 PM, David Irvine <[email protected] 
> <javascript:>> wrote:
>
>> It is already OSS (GPL) Please help yourself, if you need a different 
>> license I see no issue with that either. 
>>
>> Here it is I hope it helps 
>>
>> https://github.com/maidsafe/MaidSafe/blob/next/src/third_party_libs/cryptopp/CMakeLists.txt
>>
>> The whole project uses cmake so feel free to grab any parts you find 
>> interesting or useful. Any license issues let me know though, should be OK. 
>>
>>
>>
>> On Thu, Oct 2, 2014 at 6:51 PM, Larry Shaffer <
>> [email protected] <javascript:>> wrote:
>>
>>> Hi David,
>>>
>>> On Wednesday, May 23, 2012 12:57:26 PM UTC-6, David Irvine wrote:
>>>>
>>>> Very helpful thanks a lot. We will use these changes I imagine, gotta 
>>>> love open source !!
>>>
>>>
>>> Then, do you mind releasing your CMakeLists.txt you posted (or an 
>>> updated one) under an open source license?
>>>
>>> I am working on adding a dynamic option for the cryptopp Homebrew 
>>> formula <https://github.com/Homebrew/homebrew/pull/32857> and would 
>>> like to just use CMake instead of hacking the GNUmakefile
>>>
>>> Regards,
>>>
>>> Larry
>>>
>>>  
>>>
>>>>
>>>> Best Regards
>>>> David Irvine
>>>>
>>>> On Wed, May 23, 2012 at 7:15 PM, NoRulez <[email protected]> wrote:
>>>>
>>>>> Thanks for your file.
>>>>>
>>>>> There are the same errors on Mac OS X Lion.
>>>>> Under windows the build also breaks with MinGW.
>>>>>
>>>>> I've attached a patch for MinGW if your are interessted.
>>>>>
>>>>> Best Regards
>>>>>
>>>>> Am 23. Mai 2012 um 19:16 schrieb David Irvine <[email protected]
>>>>> >:
>>>>>
>>>>> You could try this one of ours, it does seem to work ! not a great 
>>>>> answer but perhaps a quick fix
>>>>>
>>>>> David
>>>>>
>>>>> On Wed, May 23, 2012 at 6:12 PM, NoRulez <[email protected]> wrote:
>>>>>
>>>>>> I use the following compiler flags:
>>>>>>
>>>>>>     SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -O0 -Wall -W 
>>>>>> -Wunused-variable -Wunused-parameter -Wunused-function -Wunused 
>>>>>> -Wno-system-headers -Wno-deprecated -Woverloaded-virtual -Wwrite-strings 
>>>>>> -fprofile-arcs -ftest-coverage")
>>>>>>     SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -O0 -Wall -W 
>>>>>> -fprofile-arcs -ftest-coverage")
>>>>>>     SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} 
>>>>>> -fprofile-arcs -ftest-coverage")
>>>>>>     SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} 
>>>>>> -fprofile-arcs -ftest-coverage")
>>>>>>     SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} 
>>>>>> -fprofile-arcs -ftest-coverage")
>>>>>>
>>>>>> I've also attached the CMakeLists.txt file which I use to compile it.
>>>>>>
>>>>>> Here is the output after the project is configured:
>>>>>>
>>>>>> -- The C compiler identification is GNU -- The CXX compiler 
>>>>>> identification is GNU -- Checking whether C compiler has -isysroot -- 
>>>>>> Checking whether C compiler has -isysroot - yes -- Checking whether C 
>>>>>> compiler supports OSX deployment target flag -- Checking whether C 
>>>>>> compiler supports OSX deployment target flag - yes -- Check for working 
>>>>>> C compiler: /usr/bin/gcc -- Check for working C compiler: /usr/bin/gcc 
>>>>>> -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI 
>>>>>> info - done -- Checking whether CXX compiler has -isysroot -- Checking 
>>>>>> whether CXX compiler has -isysroot - yes -- Checking whether CXX 
>>>>>> compiler supports OSX deployment target flag -- Checking whether CXX 
>>>>>> compiler supports OSX deployment target flag - yes -- Check for working 
>>>>>> CXX compiler: /usr/bin/c++ -- Check for working CXX compiler: 
>>>>>> /usr/bin/c++ -- works -- Detecting CXX compiler ABI info -- Detecting 
>>>>>> CXX compiler ABI info - done
>>>>>>
>>>>>>
>>>>>>
>>>>>> Best Regards
>>>>>>
>>>>>>
>>>>>> Am 23. Mai 2012 um 19:02 schrieb David Irvine <[email protected]
>>>>>> >:
>>>>>>
>>>>>>
>>>>>> Compile flags and versions would really help. clang is very actively 
>>>>>> being developed just now. If you use libc++ and std=c++11 you need to 
>>>>>> make 
>>>>>> some changes. Otherwise you may be using pedantic flags or similar. 
>>>>>>
>>>>>> On Wed, May 23, 2012 at 5:59 PM, NoRulez <[email protected]> wrote:
>>>>>>
>>>>>>> Hello,
>>>>>>>
>>>>>>> on windows and on linux crypto++ compiles fine.
>>>>>>> But on mac os x lion i get compile errors.
>>>>>>> Did i need to define something special to get it to work?
>>>>>>>
>>>>>>> Here are the errors:
>>>>>>>
>>>>>>> /.../source/misc.h:414:2: warning: comparison of unsigned expression < 
>>>>>>> 0 is always false [-Wtype-limits] /.../source/misc.h: In instantiation 
>>>>>>> of 'std::string CryptoPP::IntToString(T, unsigned int) [with T = 
>>>>>>> unsigned int; std::string = std::basic_string<char>]': 
>>>>>>> /.../source/simple.h:42:131: required from here 
>>>>>>> /.../source/misc.h:414:2: warning: comparison of unsigned expression < 
>>>>>>> 0 is always false [-Wtype-limits] In file included from 
>>>>>>> /.../source/rijndael.h:8:0, from /.../source/aes.h:4, from 
>>>>>>> /.../source/dll.h:11, from /.../source/dll.cpp:6: 
>>>>>>> /.../source/secblock.h: In instantiation of 
>>>>>>> 'CryptoPP::AllocatorWithCleanup<T, T_Align16>::pointer 
>>>>>>> CryptoPP::AllocatorWithCleanup<T, 
>>>>>>> T_Align16>::allocate(CryptoPP::AllocatorWithCleanup<T, 
>>>>>>> T_Align16>::size_type, const void*) [with T = unsigned char; bool 
>>>>>>> T_Align16 = false; CryptoPP::AllocatorWithCleanup<T, 
>>>>>>> T_Align16>::pointer = unsigned char*; CryptoPP::AllocatorWithCleanup<T, 
>>>>>>> T_Align16>::size_type = long unsigned int]': 
>>>>>>> /.../source/secblock.h:129:29: required from here 
>>>>>>>
>>>>>>> /.../source/secblock.h:91:3: error: 'CheckSize' was not declared in 
>>>>>>> this scope, and no declarations were found by argument-dependent lookup 
>>>>>>> at the point of instantiation [-fpermissive]
>>>>>>>
>>>>>>> /.../source/secblock.h:91:3: note: declarations in dependent base 
>>>>>>> 'CryptoPP::AllocatorBase<unsigned char>' are not found by unqualified 
>>>>>>> lookup /.../source/secblock.h:91:3: note: use 'this->CheckSize' instead 
>>>>>>> /.../source/secblock.h: In instantiation of 
>>>>>>> 'CryptoPP::AllocatorWithCleanup<T, T_Align16>::pointer 
>>>>>>> CryptoPP::AllocatorWithCleanup<T, 
>>>>>>> T_Align16>::allocate(CryptoPP::AllocatorWithCleanup<T, 
>>>>>>> T_Align16>::size_type, const void*) [with T = short unsigned int; bool 
>>>>>>> T_Align16 = false; CryptoPP::AllocatorWithCleanup<T, 
>>>>>>> T_Align16>::pointer = short unsigned int*; 
>>>>>>> CryptoPP::AllocatorWithCleanup<T, T_Align16>::size_type = long unsigned 
>>>>>>> int]': /.../source/secblock.h:130:29: required from here 
>>>>>>>
>>>>>>>
>>>>>>> /.../source/algebra.h:51:16: warning: unused parameter 'source' 
>>>>>>> [-Wunused-parameter] In file included from /.../source/algebra.h:282:0, 
>>>>>>> from /.../source/modarith.h:9, from /.../source/pubkey.h:35, from 
>>>>>>> /.../source/gfpcrypt.h:8, from /.../source/dh.h:7, from 
>>>>>>> /.../source/dll.h:17, from /.../source/dll.cpp:6: 
>>>>>>> /.../source/algebra.cpp: In instantiation of 'const T& 
>>>>>>> CryptoPP::AbstractEuclideanDomain<T>::Gcd(const Element&, const 
>>>>>>> Element&) const [with T = CryptoPP::Integer; 
>>>>>>> CryptoPP::AbstractEuclideanDomain<T>::Element = CryptoPP::Integer]': 
>>>>>>> /.../source/modarith.h:15:29: required from here 
>>>>>>>
>>>>>>> /.../source/algebra.cpp:61:2: error: 'Equal' was not declared in this 
>>>>>>> scope, and no declarations were found by argument-dependent lookup at 
>>>>>>> the point of instantiation [-fpermissive]
>>>>>>>
>>>>>>> /.../source/algebra.cpp:61:2: note: declarations in dependent base 
>>>>>>> 'CryptoPP::AbstractGroup<CryptoPP::Integer>' are not found by 
>>>>>>> unqualified lookup /.../source/algebra.cpp:61:2: note: use 
>>>>>>> 'this->Equal' instead In file included from /.../source/pubkey.h:36:0, 
>>>>>>> from /.../source/gfpcrypt.h:8, from /.../source/dh.h:7, from 
>>>>>>> /.../source/dll.h:17, from /.../source/dll.cpp:6: 
>>>>>>> /.../source/filters.h: In instantiation of 'size_t 
>>>>>>> CryptoPP::StringSinkTemplate<T>::Put2(const byte*, size_t, int, bool) 
>>>>>>> [with T = std::basic_string<char>; size_t = long unsigned int; byte = 
>>>>>>> unsigned char]': /.../source/filters.h:614:29: required from here 
>>>>>>> /.../source/filters.h:597:9: warning: unused parameter 'messageEnd' 
>>>>>>> [-Wunused-parameter]
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> /.../source/algebra.h:210:7: warning: unused parameter 'rhs' 
>>>>>>> [-Wunused-parameter] In file included from /.../source/dll.h:20:0, from 
>>>>>>> /.../source/dll.cpp:6: /.../source/eccrypto.h: In instantiation of 
>>>>>>> 'void CryptoPP::DL_GroupParameters_EC<EC>::Initialize(const 
>>>>>>> EllipticCurve&, const Point&, const CryptoPP::Integer&, const 
>>>>>>> CryptoPP::Integer&) [with EC = CryptoPP::ECP; 
>>>>>>> CryptoPP::DL_GroupParameters_EC<EC>::EllipticCurve = CryptoPP::ECP; 
>>>>>>> CryptoPP::DL_GroupParameters_EC<EC>::Point = CryptoPP::ECPPoint]': 
>>>>>>> /.../source/eccrypto.h:263:29: required from here 
>>>>>>>
>>>>>>> /.../source/eccrypto.h:46:3: error: 'SetSubgroupGenerator' was not 
>>>>>>> declared in this scope, and no declarations were found by 
>>>>>>> argument-dependent lookup at the point of instantiation [-fpermissive]
>>>>>>>
>>>>>>>  /.../source/eccrypto.h:46:3: note: declarations in dependent base 
>>>>>>> 'CryptoPP::DL_GroupParameters<CryptoPP::ECPPoint>' are not found by 
>>>>>>> unqualified lookup /.../source/eccrypto.h:46:3: note: use 
>>>>>>> 'this->SetSubgroupGenerator' instead In file included from 
>>>>>>> /.../source/eccrypto.h:258:0, from /.../source/dll.h:20, from 
>>>>>>> /.../source/dll.cpp:6: /.../source/eccrypto.cpp: In instantiation of 
>>>>>>> 'void CryptoPP::DL_GroupParameters_EC<EC>::Initialize(const 
>>>>>>> CryptoPP::OID&) [with EC = CryptoPP::ECP]': 
>>>>>>> /.../source/eccrypto.h:263:29: required from here 
>>>>>>>
>>>>>>> /.../source/eccrypto.cpp:594:101: error: 'ExponentiateElement' was not 
>>>>>>> declared in this scope, and no declarations were found by 
>>>>>>> argument-dependent lookup at the point of instantiation [-fpermissive]
>>>>>>>
>>>>>>>  /.../source/eccrypto.cpp:594:101: note: declarations in dependent base 
>>>>>>> 'CryptoPP::DL_GroupParameters<CryptoPP::ECPPoint>' are not found by 
>>>>>>> unqualified lookup /.../source/eccrypto.cpp:594:101: note: use 
>>>>>>> 'this->ExponentiateElement' instead In file included from 
>>>>>>> /.../source/dll.h:20:0, from /.../source/dll.cpp:6: 
>>>>>>> /.../source/eccrypto.h: In instantiation of 'void 
>>>>>>> CryptoPP::DL_GroupParameters_EC<EC>::Initialize(const EllipticCurve&, 
>>>>>>> const Point&, const CryptoPP::Integer&, const CryptoPP::Integer&) [with 
>>>>>>> EC = CryptoPP::EC2N; CryptoPP::DL_GroupParameters_EC<EC>::EllipticCurve 
>>>>>>> = CryptoPP::EC2N; CryptoPP::DL_GroupParameters_EC<EC>::Point = 
>>>>>>> CryptoPP::EC2NPoint]': /.../source/eccrypto.h:264:29: required from 
>>>>>>> here 
>>>>>>>
>>>>>>> /.../source/eccrypto.h:148:44: error: 'SetPublicElement' was not 
>>>>>>> declared in this scope, and no declarations were found by 
>>>>>>> argument-dependent lookup at the point of instantiation [-fpermissive]
>>>>>>>
>>>>>>>  /.../source/eccrypto.h:148:44: note: declarations in dependent base 
>>>>>>> 'CryptoPP::DL_PublicKey<CryptoPP::ECPPoint>' are not found by 
>>>>>>> unqualified lookup /.../source/eccrypto.h:148:44: note: use 
>>>>>>> 'this->SetPublicElement' instead /.../source/eccrypto.h: In 
>>>>>>> instantiation of 'void CryptoPP::DL_PublicKey_EC<EC>::Initialize(const 
>>>>>>> EC&, const Element&, const CryptoPP::Integer&, const Element&) [with EC 
>>>>>>> = CryptoPP::ECP; CryptoPP::DL_PublicKey_EC<EC>::Element = 
>>>>>>> CryptoPP::ECPPoint]': /.../source/eccrypto.h:267:29: required from here 
>>>>>>>
>>>>>>> /.../source/eccrypto.h:169:4: error: 'GenerateRandom' was not declared 
>>>>>>> in this scope, and no declarations were found by argument-dependent 
>>>>>>> lookup at the point of instantiation [-fpermissive]
>>>>>>>
>>>>>>>  /.../source/eccrypto.h:169:4: note: declarations in dependent base 
>>>>>>> 'CryptoPP::DL_PrivateKeyImpl<CryptoPP::DL_GroupParameters_EC<CryptoPP::ECP>
>>>>>>>  >' are not found by unqualified lookup /.../source/eccrypto.h:169:4: 
>>>>>>> note: use 'this->GenerateRandom' instead /.../source/eccrypto.h: In 
>>>>>>> instantiation of 'void 
>>>>>>> CryptoPP::DL_PrivateKey_EC<EC>::Initialize(CryptoPP::RandomNumberGenerator&,
>>>>>>>  const EC&, const Element&, const CryptoPP::Integer&) [with EC = 
>>>>>>> CryptoPP::ECP; CryptoPP::DL_PrivateKey_EC<EC>::Element = 
>>>>>>> CryptoPP::ECPPoint]': /.../source/eccrypto.h:271:29: required from here
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Best Regards
>>>>>>>  NoRulez
>>>>>>>  
>>>>>>>
>>>>>>> -- 
>>>>>>> You received this message because you are subscribed to the 
>>>>>>> "Crypto++ Users" Google Group.
>>>>>>> To unsubscribe, send an email to [email protected].
>>>>>>> More information about Crypto++ and this group is available at 
>>>>>>> http://www.cryptopp.com.
>>>>>>
>>>>>>
>>>>>>
>>>>>> -- 
>>>>>> You received this message because you are subscribed to the "Crypto++ 
>>>>>> Users" Google Group.
>>>>>> To unsubscribe, send an email to [email protected].
>>>>>>
>>>>>> More information about Crypto++ and this group is available at 
>>>>>> http://www.cryptopp.com.
>>>>>>
>>>>>>
>>>>>  #===========================================================
>>>>> ===================#
>>>>> # #
>>>>> # Copyright (c) 2012 MaidSafe.net limited #
>>>>> # #
>>>>> # The following source code is property of MaidSafe.net limited and 
>>>>> is not #
>>>>> # meant for external use. The use of this code is governed by the 
>>>>> license #
>>>>> # file licence.txt found in the root directory of this project and 
>>>>> also on #
>>>>> # www.maidsafe.net. #
>>>>> # #
>>>>> # You are not free to copy, amend or otherwise use this source code 
>>>>> without #
>>>>> # the explicit written permission of the board of directors of 
>>>>> MaidSafe.net. #
>>>>> # #
>>>>> #===========================================================
>>>>> ===================#
>>>>>
>>>>> cmake_minimum_required(VERSION 2.8.7 FATAL_ERROR)
>>>>> project(Cryptopp)
>>>>> enable_testing()
>>>>>
>>>>> set(CMAKE_DEBUG_POSTFIX _d)
>>>>> set(CMAKE_RELWITHDEBINFO_POSTFIX _rwdi)
>>>>> set(CMAKE_MINSIZEREL_POSTFIX _msr)
>>>>>
>>>>> if(CMAKE_BUILD_TYPE MATCHES "Debug")
>>>>> set(TEST_POSTFIX ${CMAKE_DEBUG_POSTFIX})
>>>>> elseif(CMAKE_BUILD_TYPE MATCHES "RelWithDebInfo")
>>>>> set(TEST_POSTFIX ${CMAKE_RELWITHDEBINFO_POSTFIX})
>>>>> elseif(CMAKE_BUILD_TYPE MATCHES "MinSizeRel")
>>>>> set(TEST_POSTFIX ${CMAKE_MINSIZEREL_POSTFIX})
>>>>> endif()
>>>>>
>>>>> include(CTest)
>>>>>
>>>>> set(CTEST_CUSTOM_MAXIMUM_PASSED_TEST_OUTPUT_SIZE 50000)
>>>>> set(CTEST_CUSTOM_MAXIMUM_FAILED_TEST_OUTPUT_SIZE 50000)
>>>>> set(CTEST_CONTINUOUS_DURATION 600)
>>>>> set(CTEST_CONTINUOUS_MINIMUM_INTERVAL 10)
>>>>> set(CTEST_START_WITH_EMPTY_BINARY_DIRECTORY true)
>>>>>
>>>>> file(GLOB cryptopp_SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/*.cpp")
>>>>> file(GLOB cryptopp_HEADERS "${CMAKE_CURRENT_SOURCE_DIR}/*.h")
>>>>>
>>>>> if(CMAKE_CL_64)
>>>>> set(cryptopp_SOURCES ${cryptopp_SOURCES} 
>>>>> ${CMAKE_CURRENT_SOURCE_DIR}/x64dll.asm 
>>>>> ${CMAKE_CURRENT_SOURCE_DIR}/x64masm.asm)
>>>>> add_custom_command(OUTPUT $(IntDir)x64dll.obj
>>>>> COMMAND ml64.exe /c /nologo /Fo$(IntDir)x64dll.obj /Zi 
>>>>> "${CMAKE_CURRENT_SOURCE_DIR}/x64dll.asm"
>>>>> MAIN_DEPENDENCY ${CMAKE_CURRENT_SOURCE_DIR}/x64dll.asm
>>>>> VERBATIM)
>>>>> add_custom_command(OUTPUT $(IntDir)x64masm.obj
>>>>> COMMAND ml64.exe /c /nologo /Fo$(IntDir)x64masm.obj /Zi 
>>>>> "${CMAKE_CURRENT_SOURCE_DIR}/x64masm.asm"
>>>>> MAIN_DEPENDENCY ${CMAKE_CURRENT_SOURCE_DIR}/x64masm.asm
>>>>> VERBATIM)
>>>>> endif()
>>>>>
>>>>> # Not used
>>>>> list(REMOVE_ITEM cryptopp_SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/
>>>>> eccrypto.cpp")
>>>>> list(REMOVE_ITEM cryptopp_SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/
>>>>> eprecomp.cpp")
>>>>> list(REMOVE_ITEM cryptopp_SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/
>>>>> cryptlib_bds.cpp")
>>>>>
>>>>>
>>>>> # Set up test
>>>>> list(REMOVE_ITEM cryptopp_SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/
>>>>> bench.cpp")
>>>>> list(REMOVE_ITEM cryptopp_SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/
>>>>> bench2.cpp")
>>>>> list(REMOVE_ITEM cryptopp_SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/
>>>>> datatest.cpp")
>>>>> list(REMOVE_ITEM cryptopp_SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/
>>>>> dlltest.cpp")
>>>>> list(REMOVE_ITEM cryptopp_SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/
>>>>> fipsalgt.cpp")
>>>>> list(REMOVE_ITEM cryptopp_SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/
>>>>> regtest.cpp")
>>>>> list(REMOVE_ITEM cryptopp_SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/
>>>>> test.cpp")
>>>>> list(REMOVE_ITEM cryptopp_SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/
>>>>> validat1.cpp")
>>>>> list(REMOVE_ITEM cryptopp_SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/
>>>>> validat2.cpp")
>>>>> list(REMOVE_ITEM cryptopp_SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/
>>>>> validat3.cpp")
>>>>>
>>>>> set(cryptopp_TEST_SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/bench.cpp
>>>>> ${CMAKE_CURRENT_SOURCE_DIR}/bench2.cpp
>>>>> ${CMAKE_CURRENT_SOURCE_DIR}/datatest.cpp
>>>>> ${CMAKE_CURRENT_SOURCE_DIR}/dlltest.cpp
>>>>> ${CMAKE_CURRENT_SOURCE_DIR}/fipsalgt.cpp
>>>>> ${CMAKE_CURRENT_SOURCE_DIR}/regtest.cpp
>>>>> ${CMAKE_CURRENT_SOURCE_DIR}/test.cpp
>>>>> ${CMAKE_CURRENT_SOURCE_DIR}/validat1.cpp
>>>>> ${CMAKE_CURRENT_SOURCE_DIR}/validat2.cpp
>>>>> ${CMAKE_CURRENT_SOURCE_DIR}/validat3.cpp)
>>>>>
>>>>> list(REMOVE_ITEM cryptopp_HEADERS "${CMAKE_CURRENT_SOURCE_DIR}/
>>>>> bench.h")
>>>>> list(REMOVE_ITEM cryptopp_HEADERS "${CMAKE_CURRENT_SOURCE_DIR}/
>>>>> factory.h")
>>>>> list(REMOVE_ITEM cryptopp_HEADERS "${CMAKE_CURRENT_SOURCE_DIR}/
>>>>> validate.h")
>>>>>
>>>>> set(cryptopp_TEST_HEADERS ${CMAKE_CURRENT_SOURCE_DIR}/bench.h
>>>>> ${CMAKE_CURRENT_SOURCE_DIR}/factory.h
>>>>> ${CMAKE_CURRENT_SOURCE_DIR}/validate.h)
>>>>>
>>>>>
>>>>> add_executable(cryptest ${cryptopp_TEST_SOURCES} 
>>>>> ${cryptopp_TEST_HEADERS})
>>>>>
>>>>> add_library(cryptopp STATIC ${cryptopp_SOURCES} ${cryptopp_HEADERS})
>>>>>
>>>>> set_target_properties(cryptest cryptopp PROPERTIES FOLDER "Third 
>>>>> Party/Crypto++")
>>>>>
>>>>> add_custom_command(TARGET cryptest
>>>>> POST_BUILD
>>>>> COMMAND ${CMAKE_COMMAND} ARGS -E copy_directory 
>>>>> ${CMAKE_CURRENT_SOURCE_DIR}/TestData $<TARGET_FILE_DIR:cryptest>/
>>>>> TestData)
>>>>> add_custom_command(TARGET cryptest
>>>>> POST_BUILD
>>>>> COMMAND ${CMAKE_COMMAND} ARGS -E copy_directory 
>>>>> ${CMAKE_CURRENT_SOURCE_DIR}/TestVectors $<TARGET_FILE_DIR:cryptest>/
>>>>> TestVectors)
>>>>> add_custom_command(TARGET cryptest
>>>>> POST_BUILD
>>>>> COMMAND ${CMAKE_COMMAND} ARGS -E copy_directory 
>>>>> ${CMAKE_CURRENT_SOURCE_DIR}/TestData ${CMAKE_BINARY_DIR}/TestData)
>>>>> add_custom_command(TARGET cryptest
>>>>> POST_BUILD
>>>>> COMMAND ${CMAKE_COMMAND} ARGS -E copy_directory 
>>>>> ${CMAKE_CURRENT_SOURCE_DIR}/TestVectors ${CMAKE_BINARY_DIR}/
>>>>> TestVectors)
>>>>> # if(NOT MSVC)
>>>>> # set_target_properties(cryptest PROPERTIES
>>>>> # DEBUG_OUTPUT_NAME cryptest${CMAKE_DEBUG_POSTFIX}
>>>>> # RELWITHDEBINFO_OUTPUT_NAME cryptest${CMAKE_RELWITHDEBINFO_POSTFIX}
>>>>> # MINSIZEREL_OUTPUT_NAME cryptest${CMAKE_MINSIZEREL_POSTFIX})
>>>>> # 
>>>>> # endif()
>>>>>
>>>>> # install(TARGETS cryptopp ARCHIVE DESTINATION lib)
>>>>>
>>>>> target_link_libraries(cryptest cryptopp)
>>>>>
>>>>> if(UNIX)
>>>>> if(CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
>>>>> add_definitions(-DCRYPTOPP_DISABLE_ASM -DCRYPTOPP_DISABLE_UNCAUGHT_
>>>>> EXCEPTION)
>>>>> set_target_properties(cryptopp cryptest PROPERTIES
>>>>> COMPILE_FLAGS "-Wno-tautological-compare -fPIC -Wno-c++11-narrowing 
>>>>> -std=c++11 -stdlib=libc++")
>>>>> set_target_properties(cryptest PROPERTIES LINK_FLAGS_RELEASE 
>>>>> "-stdlib=libc++" LINK_FLAGS "-stdlib=libc++")
>>>>> elseif(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
>>>>> execute_process(COMMAND ${CMAKE_C_COMPILER} -dumpversion 
>>>>> OUTPUT_VARIABLE GCC_VERSION)
>>>>> if (GCC_VERSION VERSION_GREATER 4.7 OR GCC_VERSION VERSION_EQUAL 4.7)
>>>>> set_target_properties(cryptopp cryptest PROPERTIES COMPILE_FLAGS "-O2 
>>>>> -fPIC -w -pipe -finline-functions -std=c++11")
>>>>>
>>>>> elseif(GCC_VERSION VERSION_GREATER 4.6 OR GCC_VERSION VERSION_EQUAL 
>>>>> 4.6)
>>>>> set_target_properties(cryptopp cryptest PROPERTIES COMPILE_FLAGS "-O2 
>>>>> -fPIC -w -pipe -finline-functions -std=c++0x")
>>>>> else()
>>>>> message(FATAL "Unsupported verion of GCC, minimum 4.6 required")
>>>>> endif()
>>>>> endif()
>>>>> elseif(MSVC)
>>>>> set_target_properties(cryptopp PROPERTIES
>>>>> COMPILE_FLAGS "/D_WINDOWS /DUSE_PRECOMPILED_HEADERS /DWIN32 
>>>>> /D_VC80_UPGRADE=0x0710 /EHsc /W3")
>>>>> set_target_properties(cryptest PROPERTIES
>>>>> COMPILE_FLAGS "/D_CONSOLE /DWIN32 /D_VC80_UPGRADE=0x0710 /D_MBCS /EHsc 
>>>>> /W3"
>>>>> LINK_FLAGS_RELEASE "/OPT:REF /OPT:ICF /LTCG"
>>>>> LINK_FLAGS_RELWITHDEBINFO "/LTCG"
>>>>> LINK_FLAGS_MINSIZEREL "/LTCG")
>>>>> set(CMAKE_CXX_FLAGS_RELEASE "/O2 /Ob2 /Oi /Oy /GL /DNDEBUG /GF /MT /Gy 
>>>>> /Zi")
>>>>> set(CMAKE_CXX_FLAGS_DEBUG "/Od /Oi /D_DEBUG /MTd /Zi")
>>>>> list(REMOVE_ITEM cryptopp_SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/dll.cpp") 
>>>>> # this file doesn't use precompiled headers
>>>>> list(REMOVE_ITEM cryptopp_SOURCES 
>>>>> "${CMAKE_CURRENT_SOURCE_DIR}/iterhash.cpp") 
>>>>> # this file doesn't use precompiled headers
>>>>> list(REMOVE_ITEM cryptopp_SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/pch.cpp") 
>>>>> # this file is used to create precompiled headers
>>>>> set_source_files_properties(${cryptopp_SOURCES} PROPERTIES
>>>>> COMPILE_FLAGS "/Yu\"pch.h\"")
>>>>> set_source_files_properties(${CMAKE_CURRENT_SOURCE_DIR}/pch.cpp 
>>>>> PROPERTIES
>>>>> COMPILE_FLAGS "/Yc\"pch.h\"")
>>>>> target_link_libraries(cryptest odbc32.lib odbccp32.lib Ws2_32.lib)
>>>>> endif()
>>>>>
>>>>> add_test(NAME CryptoppTest.BEH_FULL COMMAND $<TARGET_FILE:cryptest> v 
>>>>> WORKING_DIRECTORY $<TARGET_FILE_DIR:cryptest>)
>>>>> add_test(NAME CryptoppTest.BEH_AES COMMAND $<TARGET_FILE:cryptest> tv 
>>>>> aes WORKING_DIRECTORY $<TARGET_FILE_DIR:cryptest>)
>>>>> add_test(NAME CryptoppTest.BEH_SHA COMMAND $<TARGET_FILE:cryptest> tv 
>>>>> sha WORKING_DIRECTORY $<TARGET_FILE_DIR:cryptest>)
>>>>> add_test(NAME CryptoppTest.BEH_RSA_PSS COMMAND $<TARGET_FILE:cryptest> 
>>>>> tv rsa_pss WORKING_DIRECTORY $<TARGET_FILE_DIR:cryptest>)
>>>>> add_test(NAME CryptoppTest.BEH_RSA_OAEP COMMAND 
>>>>> $<TARGET_FILE:cryptest> tv rsa_oaep WORKING_DIRECTORY 
>>>>> $<TARGET_FILE_DIR:cryptest>)
>>>>> add_test(NAME CryptoppTest.BEH_RSA_PKCS1_1_5 COMMAND 
>>>>> $<TARGET_FILE:cryptest> tv rsa_pkcs1_1_5 WORKING_DIRECTORY 
>>>>> $<TARGET_FILE_DIR:cryptest>)
>>>>>
>>>>> set_property(TEST CryptoppTest.BEH_FULL PROPERTY LABELS Common common 
>>>>> Behavioural CryptoPP ${CMAKE_BUILD_TYPE})
>>>>> set_property(TEST CryptoppTest.BEH_FULL PROPERTY TIMEOUT 60)
>>>>> set_property(TEST CryptoppTest.BEH_AES PROPERTY LABELS Common common 
>>>>> Behavioural CryptoPP ${CMAKE_BUILD_TYPE})
>>>>> set_property(TEST CryptoppTest.BEH_AES PROPERTY TIMEOUT 60)
>>>>> set_property(TEST CryptoppTest.BEH_SHA PROPERTY LABELS Common common 
>>>>> Behavioural CryptoPP ${CMAKE_BUILD_TYPE})
>>>>> set_property(TEST CryptoppTest.BEH_SHA PROPERTY TIMEOUT 60)
>>>>> set_property(TEST CryptoppTest.BEH_RSA_PSS PROPERTY LABELS Common 
>>>>> common Behavioural CryptoPP ${CMAKE_BUILD_TYPE})
>>>>> set_property(TEST CryptoppTest.BEH_RSA_PSS PROPERTY TIMEOUT 60)
>>>>> set_property(TEST CryptoppTest.BEH_RSA_OAEP PROPERTY LABELS Common 
>>>>> common Behavioural CryptoPP ${CMAKE_BUILD_TYPE})
>>>>> set_property(TEST CryptoppTest.BEH_RSA_OAEP PROPERTY TIMEOUT 60)
>>>>> set_property(TEST CryptoppTest.BEH_RSA_PKCS1_1_5 PROPERTY LABELS 
>>>>> Common common Behavioural CryptoPP ${CMAKE_BUILD_TYPE})
>>>>> set_property(TEST CryptoppTest.BEH_RSA_PKCS1_1_5 PROPERTY TIMEOUT 60)
>>>>>
>>>>>
>>>>  -- 
>>> -- 
>>> You received this message because you are subscribed to the "Crypto++ 
>>> Users" Google Group.
>>> To unsubscribe, send an email to [email protected] 
>>> <javascript:>.
>>> More information about Crypto++ and this group is available at 
>>> http://www.cryptopp.com.
>>> --- 
>>> You received this message because you are subscribed to the Google 
>>> Groups "Crypto++ Users" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to [email protected] <javascript:>.
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>>
>>
>> -- 
>>
>> David Irvine
>> twitter: @metaquestions
>> blog:  http://metaquestions.me
>>  
>
>
>
> -- 
>
> David Irvine
> twitter: @metaquestions
> blog:  http://metaquestions.me
>  

-- 
-- 
You received this message because you are subscribed to the "Crypto++ Users" 
Google Group.
To unsubscribe, send an email to [email protected].
More information about Crypto++ and this group is available at 
http://www.cryptopp.com.
--- 
You received this message because you are subscribed to the Google Groups 
"Crypto++ Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to