> On Jan. 17, 2017, 8:46 p.m., Ilya Pronin wrote:
> > I think the name "test" can confuse people because it's usually expected to
> > be used for CTest. Maybe it would better be leave old {{tests}} and
> > {{check}} targets? https://cmake.org/Wiki/CMakeEmulateMakeCheck
>
> Alex Clemmer wrote:
> That's a great question. I'm not a CMake native, so it's not clear to me
> how weird this would be to do. The idea was to expose a `test` target to
> achieve something resembling script parity. Is this idea not compelling to
> you?
>
> Ilya Pronin wrote:
> Very compelling. I just meant that `make test` is usually expected to not
> only build tests but also run them, i.e. act the same way as autotools
> generated `make check`. E.g. debhelper's `dh_auto_test` looks for `test` or
> `check` target in a Makefile. So I suggested that target that just builds
> tests should be called `tests`.
>
> Alex Clemmer wrote:
> Ah, ok, let me just re-state what I think is true to make sure we're on
> the page. Right now the autotools build has the semantics that `make check`
> will build + run tests, and `make test` will simply build them. So the
> original idea here was that `make test` achieve script parity for our own
> tooling. And it sounds like what you're saying is that this should actually
> be the goal -- the goal should be that we do something more congruent with
> the normal use of the CMake semantics of `make test` and then have another
> target (which could be called, _e.g._, `make tests`, with an `s`) that
> implements these semantics.
>
> Is that all approximately correct?
>
> If so, let's wait and see what `kaysoky` says. He has a better
> understanding for the impact of changing the semantics of the `make test`
> target. IMHO this is a sensible suggestion, but it's important to get input
> for how much work this creates for the downstream consumers of the `make
> test` target.
Yes, except for 1 thing: current autotools target that builds tests is called
`tests` :) https://github.com/apache/mesos/blob/master/src/Makefile.am#L2490
- Ilya
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/55637/#review161940
-----------------------------------------------------------
On Jan. 17, 2017, 7:33 p.m., Alex Clemmer wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/55637/
> -----------------------------------------------------------
>
> (Updated Jan. 17, 2017, 7:33 p.m.)
>
>
> Review request for mesos, Andrew Schwartzmeyer, Daniel Pravat, and Joseph Wu.
>
>
> Bugs: MESOS-3697
> https://issues.apache.org/jira/browse/MESOS-3697
>
>
> Repository: mesos
>
>
> Description
> -------
>
> This commit will introduce a `test` target to the CMake build system.
> The semantics of this target are very similar to the autotools build
> system, in that they build the tests, but do not run them.
>
> Accomplishing this is somewhat complex in CMake, because CMake expects
> to control the `test` target itself. We work around this by (1)
> silencing the warning that `test` is a reserved target, (2) removing the
> call to `enable_testing` that sets up CTest, and (3) adding our own
> `test` target. As an additional insurance policy, we error out if any of
> the `BUILD_TESTING` flags are defined, which would indicate that
> `include(CTest)` was called.
>
>
> Diffs
> -----
>
> CMakeLists.txt c6b1eb6a7c7e6ed3650847acbec0ddd3101bb96f
> cmake/MesosConfigure.cmake 6a9ed9dc02f5c9a6d1fce0866f19ffeafec35cdc
> src/tests/CMakeLists.txt b7adf4f3126611a57baf4f62b62b208bc0236da5
>
> Diff: https://reviews.apache.org/r/55637/diff/
>
>
> Testing
> -------
>
>
> Thanks,
>
> Alex Clemmer
>
>