annotate cmake/MlkMap.cmake @ 349:99d9b6a7e3db

port: implement a mort temporary friendly fmemopen function
author David Demelier <markand@malikania.fr>
date Wed, 20 Oct 2021 13:55:41 +0200
parents 8f9937403749
children 19782ea1cf4a
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
313
dbfe05b88627 cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff changeset
1 #
dbfe05b88627 cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff changeset
2 # CMakeLists.txt -- CMake build system for Molko's Adventure
dbfe05b88627 cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff changeset
3 #
314
d01e83210ca2 misc: update years
David Demelier <markand@malikania.fr>
parents: 313
diff changeset
4 # Copyright (c) 2020-2021 David Demelier <markand@malikania.fr>
313
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 # Permission to use, copy, modify, and/or distribute this software for any
dbfe05b88627 cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff changeset
7 # purpose with or without fee is hereby granted, provided that the above
dbfe05b88627 cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff changeset
8 # copyright notice and this permission notice appear in all copies.
dbfe05b88627 cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff changeset
9 #
dbfe05b88627 cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff changeset
10 # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
dbfe05b88627 cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff changeset
11 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
dbfe05b88627 cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff changeset
12 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
dbfe05b88627 cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff changeset
13 # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
dbfe05b88627 cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff changeset
14 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
dbfe05b88627 cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff changeset
15 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
dbfe05b88627 cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff changeset
16 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
dbfe05b88627 cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff changeset
17 #
dbfe05b88627 cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff changeset
18
320
8f9937403749 misc: improve loading of data
David Demelier <markand@malikania.fr>
parents: 314
diff changeset
19 function(mlk_map input output)
8f9937403749 misc: improve loading of data
David Demelier <markand@malikania.fr>
parents: 314
diff changeset
20 if (MLK_WITH_ZSTD)
8f9937403749 misc: improve loading of data
David Demelier <markand@malikania.fr>
parents: 314
diff changeset
21 set(cmd
8f9937403749 misc: improve loading of data
David Demelier <markand@malikania.fr>
parents: 314
diff changeset
22 COMMAND $<TARGET_FILE:mlk-map> < ${input} > ${output}.zst
8f9937403749 misc: improve loading of data
David Demelier <markand@malikania.fr>
parents: 314
diff changeset
23 COMMAND ZSTD::exe -17 -fq --rm ${output}.zst -o ${output}
8f9937403749 misc: improve loading of data
David Demelier <markand@malikania.fr>
parents: 314
diff changeset
24 )
8f9937403749 misc: improve loading of data
David Demelier <markand@malikania.fr>
parents: 314
diff changeset
25 else ()
8f9937403749 misc: improve loading of data
David Demelier <markand@malikania.fr>
parents: 314
diff changeset
26 set(cmd COMMAND $<TARGET_FILE:mlk-map> < ${input} > ${output})
313
dbfe05b88627 cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff changeset
27 endif ()
dbfe05b88627 cmake: bring back for good
David Demelier <markand@malikania.fr>
parents:
diff changeset
28
320
8f9937403749 misc: improve loading of data
David Demelier <markand@malikania.fr>
parents: 314
diff changeset
29 add_custom_command(
8f9937403749 misc: improve loading of data
David Demelier <markand@malikania.fr>
parents: 314
diff changeset
30 OUTPUT ${output}
8f9937403749 misc: improve loading of data
David Demelier <markand@malikania.fr>
parents: 314
diff changeset
31 COMMAND ${cmd}
8f9937403749 misc: improve loading of data
David Demelier <markand@malikania.fr>
parents: 314
diff changeset
32 DEPENDS $<TARGET_FILE:mlk-map>
8f9937403749 misc: improve loading of data
David Demelier <markand@malikania.fr>
parents: 314
diff changeset
33 COMMENT "Generating ${output}"
8f9937403749 misc: improve loading of data
David Demelier <markand@malikania.fr>
parents: 314
diff changeset
34 )
8f9937403749 misc: improve loading of data
David Demelier <markand@malikania.fr>
parents: 314
diff changeset
35 endfunction()