aboutsummaryrefslogtreecommitdiff
path: root/dep/rapidjson/CMakeLists.txt
blob: 026247efa5ecf91f5a340bae120896edeb9b9ed7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# This file is part of the TrinityCore Project. See AUTHORS file for Copyright information
#
# This file is free software; as a special exception the author gives
# unlimited permission to copy and/or distribute it, with or without
# modifications, as long as this notice is preserved.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

add_library(rapidjson INTERFACE)

target_include_directories(rapidjson
  INTERFACE
    ${CMAKE_CURRENT_SOURCE_DIR})

target_compile_definitions(rapidjson
  INTERFACE
    -DRAPIDJSON_HAS_STDSTRING
    -DRAPIDJSON_48BITPOINTER_OPTIMIZATION=0
    -DRAPIDJSON_ASSERT=WPAssert)

if(CMAKE_SYSTEM_PROCESSOR MATCHES "(x86_64)|(AMD64|amd64)|(^i.86$)")
  target_compile_definitions(rapidjson INTERFACE -DRAPIDJSON_SSE2)
elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "^arm")
  target_compile_definitions(rapidjson INTERFACE -DRAPIDJSON_NEON)
elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "^aarch64")
  target_compile_definitions(rapidjson INTERFACE -DRAPIDJSON_NEON)
endif()