add_executable(pdfengine_smoke smoke_test.cpp font_rendering_test.cpp font_loader_descriptor_test.cpp font_encoding_test.cpp font_types_test.cpp graphics_state_test.cpp display_list_test.cpp document_load_test.cpp page_render_test.cpp document_edit_test.cpp edit_session_test.cpp font_diagnostics_test.cpp text_encoding_test.cpp skia_renderer_test.cpp lexer_test.cpp parser_test.cpp content_builder_test.cpp ast_serializer_test.cpp content_serializer_test.cpp qpdf_writer_test.cpp ) if(PDFENGINE_WITH_QPDF) target_sources(pdfengine_smoke PRIVATE qpdf_extractor_test.cpp image_xobject_test.cpp ) endif() target_link_libraries(pdfengine_smoke PRIVATE pdfengine::pdfengine GTest::gtest GTest::gtest_main ) if(PDFENGINE_WITH_SKIA) target_link_libraries(pdfengine_smoke PRIVATE skia::skia) endif() if(PDFENGINE_WITH_PDFIUM) target_link_libraries(pdfengine_smoke PRIVATE pdfium::pdfium) endif() if(PDFENGINE_WITH_QPDF) target_link_libraries(pdfengine_smoke PRIVATE qpdf::libqpdf ZLIB::ZLIB JPEG::JPEG) endif() if(MSVC) target_link_options(pdfengine_smoke PRIVATE "/FORCE:MULTIPLE") endif() target_include_directories(pdfengine_smoke PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/../src" ) set(TEST_CORPUS_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../../corpus" CACHE PATH "Path to test corpus") file(TO_CMAKE_PATH "${TEST_CORPUS_DIR}" TEST_CORPUS_DIR_NORM) target_compile_definitions(pdfengine_smoke PRIVATE TEST_CORPUS_DIR="${TEST_CORPUS_DIR_NORM}") pdfengine_set_warnings(pdfengine_smoke) pdfengine_enable_sanitizers(pdfengine_smoke) gtest_discover_tests(pdfengine_smoke)