Resolve "testless distcheck"

Andrei Pavel requested to merge 2742-testless-distcheck into master

Closes #2742 (closed).

The main goal of this MR is to only run tests (including shell tests and python tests) only if gtest is enabled on make check and make distcheck.

Additionally, it moves shell tests and python tests after C++ tests. The reasoning is that C++ tests are first-class citizens. We rely on them more. We change them more during development. So they should be the first ones that return a result.

noinst_SCRIPTS was moved in some makefiles, to move it closer to the other noinst.

# Don't install C++ tests.
noinst_PROGRAMS = $(PROGRAM_TESTS)    <----
 
endif
 
# Don't install shell tests.
noinst_SCRIPTS = $(SHTESTS)           <----

It's normal for the noinst_SCRIPTS to be outside the endif because unlike PROGRAM_TESTS which are only created conditionally based on the status of gtest, SHTESTS are always created by configure.ac.

distcheck run on this branch: https://jenkins.aws.isc.org/view/Kea-manual/job/kea-manual/job/distcheck/135/ ut-extended run on this branch: https://jenkins.aws.isc.org/view/Kea-manual/job/kea-manual/job/ut-extended/184/

The jobs stall, but it's a jenkins issue for one system: All nodes of label ‘freebsd&&13.0&&amd64’ are offline.

Edited by Andrei Pavel

Merge request reports