Branch
Hash :
8680e9da
Author :
Thomas de Grivel
Date :
2025-11-01T15:06:21
fix recursive makefiles
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98
## kc3
## Copyright from 2022 to 2025 kmx.io <contact@kmx.io>
##
## Permission is hereby granted to use this software granted the above
## copyright notice and this permission paragraph are included in all
## copies and substantial portions of this software.
##
## THIS SOFTWARE IS PROVIDED "AS-IS" WITHOUT ANY GUARANTEE OF
## PURPOSE AND PERFORMANCE. IN NO EVENT WHATSOEVER SHALL THE
## AUTHOR BE CONSIDERED LIABLE FOR THE USE AND PERFORMANCE OF
## THIS SOFTWARE.
all:
${MAKE} build
if ${HAVE_GCOV}; then ${MAKE} cov; fi
${MAKE} debug
if ${HAVE_ASAN}; then ${MAKE} asan; fi
include config.mk
include sources.mk
asan:
${MAKE} ${PROG_ASAN}
if ${HAVE_DARWIN}; then ${MAKE} -C macos asan; fi
build:
${MAKE} ${PROG}
if ${HAVE_DARWIN}; then ${MAKE} -C macos build; fi
clean::
if ${HAVE_DARWIN}; then ${MAKE} -C macos clean; fi
clean_cov::
if ${HAVE_DARWIN}; then ${MAKE} -C macos clean_cov; fi
cov:
${MAKE} ${PROG_COV}
if ${HAVE_DARWIN}; then ${MAKE} -C macos cov; fi
debug:
${MAKE} ${PROG_DEBUG}
if ${HAVE_DARWIN}; then ${MAKE} -C macos debug; fi
demo:
${MAKE} ${PROG}
if ${HAVE_DARWIN}; then ${MAKE} -C macos demo; else time ./${PROG}; fi
demo_asan:
${MAKE} asan
if ${HAVE_DARWIN}; then ${MAKE} -C macos demo_asan; else time ./${PROG_ASAN}; fi
demo_cov:
${MAKE} cov
if ${HAVE_DARWIN}; then ${MAKE} -C macos demo_cov; else time ./${PROG_COV}; fi
demo_debug:
${MAKE} debug
if ${HAVE_DARWIN}; then ${MAKE} -C macos demo_debug; else time ./${PROG_DEBUG}; fi
distclean::
if ${HAVE_DARWIN}; then ${MAKE} -C macos distclean; fi
gcovr:
gcovr --gcov-executable ${GCOV} --html-details ${PROG}.html
if ${HAVE_DARWIN}; then ${MAKE} -C macos gcovr; fi
gdb_demo: debug
if ${HAVE_DARWIN}; then ${MAKE} -C macos gdb_demo; else gdb ${PROG_DEBUG}; fi
install:
install -m 755 -d ${DESTDIR}${prefix}/bin
install -m 755 ${PROG} ${DESTDIR}${prefix}/bin/${PROG}
if ${HAVE_DARWIN}; then ${MAKE} -C macos install; fi
lldb_demo: debug
if ${HAVE_DARWIN}; then ${MAKE} -C macos lldb_demo; else lldb ${PROG_DEBUG}; fi
update_sources:
./update_sources
uninstall:
rm -f ${prefix}/bin/${PROG}
.PHONY: \
all \
asan \
build \
cov \
debug \
demo \
demo_asan \
demo_cov \
demo_debug \
gdb_demo \
install \
lldb_demo \
update_sources \
uninstall