1cxx_library(
2    name='libpzstd',
3    visibility=['PUBLIC'],
4    header_namespace='',
5    exported_headers=[
6        'ErrorHolder.h',
7        'Logging.h',
8        'Pzstd.h',
9    ],
10    headers=[
11        'SkippableFrame.h',
12    ],
13    srcs=[
14        'Pzstd.cpp',
15        'SkippableFrame.cpp',
16    ],
17    deps=[
18        ':options',
19        '//contrib/pzstd/utils:utils',
20        '//lib:mem',
21        '//lib:zstd',
22    ],
23)
24
25cxx_library(
26    name='options',
27    visibility=['PUBLIC'],
28    header_namespace='',
29    exported_headers=['Options.h'],
30    srcs=['Options.cpp'],
31    deps=[
32        '//contrib/pzstd/utils:scope_guard',
33        '//lib:zstd',
34        '//programs:util',
35    ],
36)
37
38cxx_binary(
39    name='pzstd',
40    visibility=['PUBLIC'],
41    srcs=['main.cpp'],
42    deps=[
43        ':libpzstd',
44        ':options',
45    ],
46)
47
48# Must run "make googletest" first
49cxx_library(
50    name='gtest',
51    srcs=glob([
52        'googletest/googletest/src/gtest-all.cc',
53        'googletest/googlemock/src/gmock-all.cc',
54        'googletest/googlemock/src/gmock_main.cc',
55    ]),
56    header_namespace='',
57    exported_headers=subdir_glob([
58        ('googletest/googletest/include', '**/*.h'),
59        ('googletest/googlemock/include', '**/*.h'),
60    ]),
61    headers=subdir_glob([
62        ('googletest/googletest', 'src/*.cc'),
63        ('googletest/googletest', 'src/*.h'),
64        ('googletest/googlemock', 'src/*.cc'),
65        ('googletest/googlemock', 'src/*.h'),
66    ]),
67    platform_linker_flags=[
68        ('android', []),
69        ('', ['-lpthread']),
70    ],
71    visibility=['PUBLIC'],
72)
73