]> rtime.felk.cvut.cz Git - hubacji1/bcar.git/blob - CMakeLists.txt
Merge branch 'add/compare-to-zips'
[hubacji1/bcar.git] / CMakeLists.txt
1 # SPDX-FileCopyrightText: 2021 Jiri Vlasak <jiri.vlasak.2@cvut.cz>
2 #
3 # SPDX-License-Identifier: GPL-3.0-only
4
5 cmake_minimum_required(VERSION 2.8)
6 project(bcar)
7
8 #set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS_DEBUG} -fno-omit-frame-pointer -fsanitize=address")
9 #set (CMAKE_LINKER_FLAGS "${CMAKE_LINKER_FLAGS_DEBUG} -fno-omit-frame-pointer -fsanitize=address")
10
11 add_compile_options(-Wall -Wextra -pedantic -Werror)
12
13 add_library(bcar STATIC src/bcar.cc)
14 target_include_directories(bcar PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/incl)
15
16 add_library(pslot STATIC src/pslot.cc)
17 target_include_directories(pslot PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/incl)
18 target_link_libraries(pslot bcar)
19
20 add_executable(compute_pslot_table src/compute_pslot_table.cc)
21 target_link_libraries(compute_pslot_table pslot)
22
23 add_executable(prove_parallel_slot src/prove_parallel_slot.cc)
24 target_link_libraries(prove_parallel_slot pslot)
25
26 add_executable(compare_to_vorobieva src/compare_to_vorobieva.cc)
27 target_link_libraries(compare_to_vorobieva pslot)
28
29 add_executable(compare_to_zips src/compare_to_zips.cc)
30 target_link_libraries(compare_to_zips pslot)
31
32 if (SKIP_UT)
33         return()
34 endif()
35 add_executable(ut
36         wvtest/cpp/wvtestmain.cc
37         wvtest/cpp/wvtest.cc
38         ut/bcar.t.cc
39         ut/pslot.t.cc
40 )
41 target_compile_definitions(ut PRIVATE WVTEST_CONFIGURED)
42 target_include_directories(ut PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/wvtest/cpp)
43 target_link_libraries(ut bcar pslot)
44 add_custom_command(TARGET ut
45         POST_BUILD COMMAND ./wvtestrun ../build/ut
46         WORKING_DIRECTORY ../wvtest
47 )