/ Makefile
Makefile
1 # Copyright (c) 2017 Thomas Pornin <pornin@bolet.org> 2 # 3 # Permission is hereby granted, free of charge, to any person obtaining 4 # a copy of this software and associated documentation files (the 5 # "Software"), to deal in the Software without restriction, including 6 # without limitation the rights to use, copy, modify, merge, publish, 7 # distribute, sublicense, and/or sell copies of the Software, and to 8 # permit persons to whom the Software is furnished to do so, subject to 9 # the following conditions: 10 # 11 # The above copyright notice and this permission notice shall be 12 # included in all copies or substantial portions of the Software. 13 # 14 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 15 # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 16 # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 17 # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS 18 # BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN 19 # ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 20 # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 # SOFTWARE. 22 23 # ====================================================================== 24 25 # The lines below are a horrible hack that nonetheless works. On a 26 # "make" utility compatible with Single Unix v4 (this includes GNU and 27 # BSD make), the '\' at the end of a command line counts as an escape 28 # for the newline character, so the next line is still a comment. 29 # However, Microsoft's nmake.exe (that comes with Visual Studio) does 30 # not interpret the final '\' that way in a comment. The end result is 31 # that when using nmake.exe, this will include "mk/Win.mk", whereas 32 # GNU/BSD make will include "mk/Unix.mk". 33 34 # \ 35 !ifndef 0 # \ 36 !include mk/NMake.mk # \ 37 !else 38 .POSIX: 39 include mk/SingleUnix.mk 40 # Extra hack for OpenBSD make. 41 ifndef: all 42 0: all 43 endif: all 44 # \ 45 !endif