blob: e3e84ab834fb2dd8bceadfe6c84f7dfd9365a4f3 [file] [log] [blame]
# 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.
cmake_minimum_required(VERSION 3.10)
project(testobject LANGUAGES CXX)
add_library(testobject SHARED
ArrayOfByte.hpp
BatchObject.cpp
BatchObject.hpp
DeltaFastAssetAccount.cpp
DeltaFastAssetAccount.hpp
DeltaPSTObject.cpp
DeltaPSTObject.hpp
DeltaTestImpl.cpp
DeltaTestImpl.hpp
DeltaTestObj.hpp
EqStruct.cpp
EqStruct.hpp
FastAsset.cpp
FastAsset.hpp
FastAssetAccount.cpp
FastAssetAccount.hpp
InvalidPdxUsage.cpp
InvalidPdxUsage.hpp
NestedPdxObject.cpp
NestedPdxObject.hpp
NonPdxType.cpp
NonPdxType.hpp
NoopAuthInit.cpp
NoopAuthInit.hpp
PdxClassV1.cpp
PdxClassV1.hpp
PdxClassV2.cpp
PdxClassV2.hpp
PdxType.cpp
PdxType.hpp
PdxVersioned1.cpp
PdxVersioned1.hpp
PdxVersioned2.cpp
PdxVersioned2.hpp
Portfolio.cpp
Portfolio.hpp
PortfolioPdx.cpp
PortfolioPdx.hpp
Position.cpp
Position.hpp
PositionPdx.cpp
PositionPdx.hpp
PSTObject.cpp
PSTObject.hpp
TestObject1.cpp
TestObject1.hpp
TimestampedObject.hpp
VariousPdxTypes.cpp
VariousPdxTypes.hpp
)
include(GenerateExportHeader)
generate_export_header(testobject)
target_include_directories(testobject
PUBLIC
$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}>
)
target_compile_definitions(testobject
PRIVATE
BUILD_TESTOBJECT
__STDC_FORMAT_MACROS
)
target_include_directories(testobject
PUBLIC
$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}>
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
$<TARGET_PROPERTY:apache-geode,SOURCE_DIR>/../src
)
target_link_libraries(testobject
PUBLIC
apache-geode
framework
PRIVATE
ACE::ACE
_WarningsAsError
)
add_clangformat(testobject)
# For Visual Studio organization
set_target_properties(testobject PROPERTIES FOLDER test-common)