# # 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. # # set include dirs include_directories (${PROJECT_SOURCE_DIR}/include) include_directories (${GTEST}) include_directories (${GTEST}/include) include_directories (${GMOCK}) include_directories (${GMOCK}/include) include_directories (${LIBCAPU_INCLUDE_DIR}) IF (TARGET_OS STREQUAL "Windows") IF (BUILD_CHECK_MEMORY) include_directories (${VLD}/include) add_definitions (-DBUILD_CHECK_MEMORY) ENDIF() ENDIF () link_directories(${LIBCAPU_LIBRARY_DIR}) add_executable (etch-cpp-test common/EtchNumberTest.cpp common/EtchInt32Test.cpp common/EtchBoolTest.cpp common/EtchByteTest.cpp common/EtchShortTest.cpp common/EtchLongTest.cpp common/EtchFloatTest.cpp common/EtchDoubleTest.cpp common/EtchStringTest.cpp common/EtchListTest.cpp common/EtchNativeArrayTest.cpp common/EtchHashTableTest.cpp common/EtchHashSetTest.cpp common/EtchExceptionTest.cpp common/EtchAuthenticationExceptionTest.cpp common/EtchRuntimeExceptionTest.cpp common/EtchDateTest.cpp common/EtchArrayValueTest.cpp util/EtchURLTest.cpp util/EtchResourcesTest.cpp util/EtchUtilTest.cpp util/EtchCircularQueueTest.cpp transport/EtchFlexBufferTest.cpp transport/EtchTcpConnectionTest.cpp transport/EtchTcpListenerTest.cpp transport/EtchPacketizerTest.cpp transport/EtchMessageTest.cpp transport/EtchMessagizerTest.cpp transport/EtchPlainMailboxManagerTest.cpp transport/EtchDefaultDeliveryServiceTest.cpp transport/EtchWhoTest.cpp serialization/EtchValidatorBooleanTest.cpp serialization/EtchValidatorByteTest.cpp serialization/EtchValidatorIntTest.cpp serialization/EtchValidatorShortTest.cpp serialization/EtchValidatorFloatTest.cpp serialization/EtchValidatorDoubleTest.cpp serialization/EtchValidatorLongTest.cpp serialization/EtchValidatorStringTest.cpp serialization/EtchValidatorObjectTest.cpp serialization/EtchComboValidatorTest.cpp serialization/EtchFieldTest.cpp serialization/EtchFieldMapTest.cpp serialization/EtchTypeTest.cpp serialization/EtchStructValueTest.cpp serialization/EtchTypeMapTest.cpp serialization/EtchClass2TypeMapTest.cpp serialization/EtchListSerializerTest.cpp serialization/EtchValidatorRuntimeExceptionTest.cpp serialization/EtchRuntimeExceptionSerializerTest.cpp serialization/EtchAuthenticationExceptionSerializerTest.cpp serialization/EtchHashTableSerializerTest.cpp serialization/EtchSetSerializerTest.cpp serialization/EtchDateSerializerTest.cpp serialization/EtchDefaultValueFactoryTest.cpp serialization/EtchValidatorStructValueTest.cpp serialization/EtchBinaryTaggedDataInputOutputTest.cpp serialization/EtchValidatorCustomTest.cpp support/EtchFreePoolTest.cpp support/EtchQueuedPoolTest.cpp support/EtchPlainMailboxTest.cpp support/EtchMonitorTest.cpp support/EtchRemoteBaseTest.cpp support/EtchRuntimeTest.cpp support/EtchAsyncResultTest.cpp ${GTEST}/src/gtest-all.cc ${GMOCK}/src/gmock-all.cc main.cpp ) IF (TARGET_OS STREQUAL "Linux") target_link_libraries (etch-cpp-test etch-cpp Capu pthread rt) ELSEIF(TARGET_OS STREQUAL "Windows") target_link_libraries (etch-cpp-test etch-cpp Capu) ELSEIF(TARGET_OS STREQUAL "QNX") target_link_libraries (etch-cpp-test etch-cpp Capu c socket) ELSEIF(TARGET_OS STREQUAL "MacOSX") target_link_libraries (etch-cpp-test etch-cpp Capu) ELSEIF(TARGET_OS STREQUAL "iPhoneSimulatorOS") target_link_libraries (etch-cpp-test etch-cpp Capu) ENDIF() IF (TARGET_OS STREQUAL "Windows" AND BUILD_CHECK_MEMORY) file (COPY ${VLD}/vld.ini DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE}) file (COPY ${VLD}/bin/dbghelp.dll DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE}) file (COPY ${VLD}/bin/vld.dll DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE}) target_link_libraries (etch-cpp-test ${VLD}/lib/vld.lib) ENDIF () add_dependencies (etch-cpp-test etch-cpp Capu_external) #install test executables INSTALL(TARGETS etch-cpp-test DESTINATION "${ETCH_INSTALL_DIR}/bin/${ETCH_TARGET_PLATFORM}/Release" CONFIGURATIONS Release) INSTALL(TARGETS etch-cpp-test DESTINATION "${ETCH_INSTALL_DIR}/bin/${ETCH_TARGET_PLATFORM}/Debug" CONFIGURATIONS Debug)