Mercurial > molko
annotate cmake/FindZSTD.cmake @ 411:d74f53299252
make: add basic GNU make support
author | David Demelier <markand@malikania.fr> |
---|---|
date | Fri, 07 Oct 2022 14:35:31 +0200 |
parents | 764f65dfa46d |
children |
rev | line source |
---|---|
313
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
1 # FindZSTD |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
2 # -------- |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
3 # |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
4 # Find ZSTD library, this modules defines: |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
5 # |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
6 # ZSTD_INCLUDE_DIRS, where to find zstd.h |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
7 # ZSTD_LIBRARIES, where to find library |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
8 # ZSTD_FOUND, if it is found |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
9 # ZSTD_EXE, path to zstd executable if found |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
10 # |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
11 # The following imported targets will be available: |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
12 # |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
13 # ZSTD::ZSTD, if found. |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
14 # ZSTD::exe, alias to ZSTD_EXE |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
15 # |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
16 |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
17 find_path(ZSTD_INCLUDE_DIR NAMES zstd.h) |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
18 find_library(ZSTD_LIBRARY NAMES libzstd zstd) |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
19 find_program(ZSTD_EXE NAMES zstd) |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
20 |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
21 include(FindPackageHandleStandardArgs) |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
22 |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
23 find_package_handle_standard_args( |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
24 ZSTD |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
25 FOUND_VAR ZSTD_FOUND |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
26 REQUIRED_VARS ZSTD_LIBRARY ZSTD_INCLUDE_DIR |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
27 ) |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
28 |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
29 if (ZSTD_FOUND) |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
30 set(ZSTD_LIBRARIES ${ZSTD_LIBRARY}) |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
31 set(ZSTD_INCLUDE_DIRS ${ZSTD_INCLUDE_DIR}) |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
32 |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
33 if (NOT TARGET ZSTD::ZSTD) |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
34 add_library(ZSTD::ZSTD UNKNOWN IMPORTED) |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
35 set_target_properties( |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
36 ZSTD::ZSTD |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
37 PROPERTIES |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
38 IMPORTED_LINK_INTERFACE_LANGUAGES "C" |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
39 IMPORTED_LOCATION "${ZSTD_LIBRARY}" |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
40 INTERFACE_INCLUDE_DIRECTORIES "${ZSTD_INCLUDE_DIRS}" |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
41 ) |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
42 endif () |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
43 |
317
764f65dfa46d
misc: various fixes for glibc
David Demelier <markand@malikania.fr>
parents:
313
diff
changeset
|
44 if (ZSTD_EXE AND NOT TARGET ZSTD::exe) |
313
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
45 add_executable(ZSTD::exe IMPORTED GLOBAL) |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
46 set_target_properties(ZSTD::exe PROPERTIES IMPORTED_LOCATION "${ZSTD_EXE}") |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
47 endif () |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
48 endif () |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
49 |
dbfe05b88627
cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
50 mark_as_advanced(ZSTD_INCLUDE_DIR ZSTD_LIBRARY) |