Syncing latest changes between public/private.

This commit is contained in:
Eric Froemling 2019-11-11 15:55:32 -08:00
parent 3a7f69851b
commit 3937ffd85f

View File

@ -39,12 +39,12 @@ DOCPREFIX = "ballisticacore_"
help: help:
@tools/snippets makefile_target_list Makefile @tools/snippets makefile_target_list Makefile
# Prerequisites that should be in place before running most any other build;
# things like tool config files, etc.
PREREQS = .cache/checkenv .dir-locals.el \ PREREQS = .cache/checkenv .dir-locals.el \
.mypy.ini .pycheckers .pylintrc .style.yapf .clang-format \ .mypy.ini .pycheckers .pylintrc .style.yapf .clang-format \
.projectile .editorconfig .projectile .editorconfig
# Target that should be built before running most any other build.
# This installs tool config files, runs environment checks, etc.
prereqs: ${PREREQS} prereqs: ${PREREQS}
prereqs-clean: prereqs-clean:
@ -257,63 +257,79 @@ formatscripts: prereqs
formatscriptsfull: prereqs formatscriptsfull: prereqs
@tools/snippets formatscripts -full @tools/snippets formatscripts -full
# Runs formatting on the project Makefile.
formatmakefile: prereqs formatmakefile: prereqs
@tools/snippets formatmakefile @tools/snippets formatmakefile
# Note: the '2' varieties include extra inspections such as PyCharm. # Note: the '2' varieties include extra inspections such as PyCharm.
# These are useful, but can take significantly longer and/or be a bit flaky. # These are useful, but can take significantly longer and/or be a bit flaky.
# Run all project checks.
check: updatecheck check: updatecheck
@$(MAKE) -j3 cpplint pylint mypy @$(MAKE) -j3 cpplint pylint mypy
@echo ALL CHECKS PASSED! @echo ALL CHECKS PASSED!
# Same as 'check' plus optional/slow extra checks.
check2: updatecheck check2: updatecheck
@$(MAKE) -j4 cpplint pylint mypy pycharmscripts @$(MAKE) -j4 cpplint pylint mypy pycharmscripts
@echo ALL CHECKS PASSED! @echo ALL CHECKS PASSED!
# Run faster checks which may occasionally miss things.
checkfast: updatecheck checkfast: updatecheck
@$(MAKE) -j3 cpplint pylintfast mypy @$(MAKE) -j3 cpplint pylintfast mypy
@echo ALL CHECKS PASSED! @echo ALL CHECKS PASSED!
# Same as 'checkfast' plus optional/slow extra checks.
checkfast2: updatecheck checkfast2: updatecheck
@$(MAKE) -j4 cpplint pylintfast mypy pycharmscripts @$(MAKE) -j4 cpplint pylintfast mypy pycharmscripts
@echo ALL CHECKS PASSED! @echo ALL CHECKS PASSED!
# Run checks with no caching (all files are checked).
checkfull: updatecheck checkfull: updatecheck
@$(MAKE) -j3 cpplintfull pylintfull mypyfull @$(MAKE) -j3 cpplintfull pylintfull mypyfull
@echo ALL CHECKS PASSED! @echo ALL CHECKS PASSED!
# Same as 'checkfull' plus optional/slow extra checks.
checkfull2: updatecheck checkfull2: updatecheck
@$(MAKE) -j4 cpplintfull pylintfull mypyfull pycharmscriptsfull @$(MAKE) -j4 cpplintfull pylintfull mypyfull pycharmscriptsfull
@echo ALL CHECKS PASSED! @echo ALL CHECKS PASSED!
# Run Cpplint checks on all C/C++ code.
cpplint: prereqs cpplint: prereqs
@tools/snippets cpplint @tools/snippets cpplint
# Run Cpplint checks without caching (all files are checked).
cpplintfull: prereqs cpplintfull: prereqs
@tools/snippets cpplint -full @tools/snippets cpplint -full
# Run Pylint checks on all Python Code.
pylint: prereqs pylint: prereqs
@tools/snippets pylint @tools/snippets pylint
# Run Pylint checks without caching (all files are checked).
pylintfull: prereqs pylintfull: prereqs
@tools/snippets pylint -full @tools/snippets pylint -full
# Run 'Fast' pylint checks (may miss problems in some cases).
# This uses dependency recursion limits and so can require much less
# re-checking but may miss problems in some cases. Its not a bad idea to
# run a non-fast check every so often or before pushing.
pylintfast: prereqs
@tools/snippets pylint -fast
# Run Mypy checks on all Python code.
mypy: prereqs mypy: prereqs
@tools/snippets mypy @tools/snippets mypy
# Run Mypy checks without caching (all files are checked).
mypyfull: prereqs mypyfull: prereqs
@tools/snippets mypy -full @tools/snippets mypy -full
# Run PyCharm checks on all Python code.
pycharmscripts: prereqs pycharmscripts: prereqs
@tools/snippets pycharmscripts @tools/snippets pycharmscripts
# Run PyCharm checks without caching (all files are checked).
pycharmscriptsfull: prereqs pycharmscriptsfull: prereqs
@tools/snippets pycharmscripts -full @tools/snippets pycharmscripts -full
# 'Fast' script checking using dependency recursion limits.
# This can require much less re-checking but may miss problems in rare cases.
# Its not a bad idea to run a non-fast check every so often or before pushing.
pylintfast: prereqs
@tools/snippets pylint -fast
# Tell make which of these targets don't represent files. # Tell make which of these targets don't represent files.
.PHONY: format formatfull formatcode formatcodefull formatscripts \ .PHONY: format formatfull formatcode formatcodefull formatscripts \
formatscriptsfull check check2 checkfast checkfast2 checkfull checkfull2 \ formatscriptsfull check check2 checkfast checkfast2 checkfull checkfull2 \
@ -340,49 +356,37 @@ updatecheck: prereqs
updatethencheck: update updatethencheck: update
@$(MAKE) -j3 cpplint pylint mypy @$(MAKE) -j3 cpplint pylint mypy
@echo ALL CHECKS PASSED! @echo ALL CHECKS PASSED!
# Same as 'updatethencheck' plus optional/slow extra checks.
updatethencheck2: update updatethencheck2: update
@$(MAKE) -j4 cpplint pylint mypy pycharmscripts @$(MAKE) -j4 cpplint pylint mypy pycharmscripts
@echo ALL CHECKS PASSED! @echo ALL CHECKS PASSED!
updatethencheckfast: update # 'updatethencheck' without caching (checks all files).
@$(MAKE) -j3 cpplint pylintfast mypy
@echo ALL CHECKS PASSED!
updatethencheckfast2: update
@$(MAKE) -j4 cpplint pylintfast mypy pycharmscripts
@echo ALL CHECKS PASSED!
updatethencheckfull: update updatethencheckfull: update
@$(MAKE) -j3 cpplintfull pylintfull mypyfull @$(MAKE) -j3 cpplintfull pylintfull mypyfull
@echo ALL CHECKS PASSED! @echo ALL CHECKS PASSED!
# 'updatethencheckfull' plus optional/slow extra checks.
updatethencheckfull2: update updatethencheckfull2: update
@$(MAKE) -j4 cpplintfull pylintfull mypyfull pycharmscriptsfull @$(MAKE) -j4 cpplintfull pylintfull mypyfull pycharmscriptsfull
@echo ALL CHECKS PASSED! @echo ALL CHECKS PASSED!
# Run a format, an update, and then a check. # Format, update, and check the project; do this before git commits.
# Handy before pushing commits.
preflight: preflight:
@$(MAKE) format @$(MAKE) format
@$(MAKE) updatethencheck @$(MAKE) updatethencheck
@echo PREFLIGHT SUCCESSFUL! @echo PREFLIGHT SUCCESSFUL!
# Same as 'preflight' plus optional/slow extra checks.
preflight2: preflight2:
@$(MAKE) format @$(MAKE) format
@$(MAKE) updatethencheck2 @$(MAKE) updatethencheck2
@echo PREFLIGHT SUCCESSFUL! @echo PREFLIGHT SUCCESSFUL!
preflightfast: # Same as 'preflight' without caching (checks all files).
@$(MAKE) format
@$(MAKE) updatethencheckfast
@echo PREFLIGHT SUCCESSFUL!
preflightfast2:
@$(MAKE) format
@$(MAKE) updatethencheckfast2
@echo PREFLIGHT SUCCESSFUL!
preflightfull: preflightfull:
@$(MAKE) formatfull @$(MAKE) formatfull
@$(MAKE) updatethencheckfull @$(MAKE) updatethencheckfull
@echo PREFLIGHT SUCCESSFUL! @echo PREFLIGHT SUCCESSFUL!
# Same as 'preflightfull' plus optional/slow extra checks.
preflightfull2: preflightfull2:
@$(MAKE) formatfull @$(MAKE) formatfull
@$(MAKE) updatethencheckfull2 @$(MAKE) updatethencheckfull2
@ -390,9 +394,8 @@ preflightfull2:
# Tell make which of these targets don't represent files. # Tell make which of these targets don't represent files.
.PHONY: update updatecheck updatethencheck updatethencheck2 \ .PHONY: update updatecheck updatethencheck updatethencheck2 \
updatethencheckfast updatethencheckfast2 updatethencheckfull \ updatethencheckfull updatethencheckfull2 preflight preflight2 \
updatethencheckfull2 preflight preflight2 preflightfast preflightfast2 \ preflightfast preflightfast2 preflightfull preflightfull2
preflightfull preflightfull2
################################################################################ ################################################################################