ADD_EXECUTABLE(benchmark-parsers parser-benchmark.cpp)

TARGET_LINK_LIBRARIES(benchmark-parsers PRIVATE dv::processing benchmark::benchmark)
TARGET_COMPILE_OPTIONS(benchmark-parsers PRIVATE "-march=native")

INCLUDE(FindPkgConfig)

PKG_CHECK_MODULES(tcmalloc IMPORTED_TARGET libtcmalloc>=2.5)

# Google Perftools only make sense for the main executable. TCMalloc support (fast memory allocation, heap
# checking/profiling).
IF(tcmalloc_FOUND)
	MESSAGE(STATUS "Google Perftools' TCMalloc support enabled.")

	TARGET_LINK_LIBRARIES(benchmark-parsers PRIVATE PkgConfig::tcmalloc)

	TARGET_COMPILE_OPTIONS(benchmark-parsers
						   PRIVATE "-fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free")
	TARGET_COMPILE_DEFINITIONS(benchmark-parsers PRIVATE "ENABLE_HEAP_PROFILER=1")
ENDIF()
