Page MenuHomeFreeBSD

New port: devel/range-v3: Experimental range library for C++11/14/17
AbandonedPublic

Authored by yuri on Feb 7 2018, 9:36 AM.
Tags
None
Referenced Files
Unknown Object (File)
Sun, May 19, 5:50 AM
Unknown Object (File)
Thu, May 9, 10:04 AM
Unknown Object (File)
Sat, Apr 27, 5:15 AM
Unknown Object (File)
Feb 29 2024, 9:42 PM
Unknown Object (File)
Feb 25 2024, 10:49 AM
Unknown Object (File)
Feb 17 2024, 11:41 PM
Unknown Object (File)
Feb 13 2024, 12:51 AM
Unknown Object (File)
Feb 4 2024, 12:13 PM
Subscribers

Details

Reviewers
tcberner
adamw
Summary

https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=225725

This port will be a dependency of Telegram.

Using NO_BUILD=yes and do-install: to avoid long rebuild of tests when they aren't needed.
This will be gone once the upstream fixes https://github.com/ericniebler/range-v3/issues/781

Diff Detail

Repository
rP FreeBSD ports repository
Lint
No Lint Coverage
Unit
No Test Coverage
Build Status
Buildable 15064
Build 15160: arc lint + arc unit

Event Timeline

devel/range-v3/Makefile
5

^DISTVERSION

14

^ you are using cmake already...

yuri marked an inline comment as done.

DISTVERSION

yuri marked an inline comment as done.Feb 8 2018, 9:12 PM
yuri added inline comments.
devel/range-v3/Makefile
5

portlint doesn't check this, despite all the effort.

14

I am using CMAKE_CMD due to this cmake:outsource.
Could you please explain what is the problem here?

devel/range-v3/Makefile
14

The comment just seems to contradicts the USES=cmake, as it implies it's not using it.

yuri marked 3 inline comments as done.Feb 8 2018, 9:34 PM
yuri added inline comments.
devel/range-v3/Makefile
14

Once 781 is fixed, cmake will also be used for build.
But currently it just rebuilds all the tests, which isn't necessary.

In which case, cmake should probably be a TEST_DEPENDS -- USES=cmake is used to have cmake used to generate the build makefile.

devel/range-v3/Makefile
5

How about simply making a mental note about it? ;-)

devel/range-v3/Makefile
5

There is a reason there are human ports committers, and that we are not simply replaced by portlint. Please stop accusing portlint of things each time you make a mistake.
A static lint tool can only tell you things based on rules, but it cannot understand intent.
It cannot know if you need to use PORTVERSION or DISTVERSION.
Because they behave differently as soon as the version contains letters.
It cannot know because no software can guess which one is right.

yuri marked 5 inline comments as done.

+TEST_DEPENDS

devel/range-v3/Makefile
28

^ CMAKE_ARGS is not defined (as no USES=cmake :) -- yeah, I know I told you to get rid of it :) )

Maybe it makes sense to get rid of the test-target until 781 is fixed (also the tests fail anyway).

yuri marked an inline comment as done.Feb 10 2018, 8:29 AM
yuri added inline comments.
devel/range-v3/Makefile
28

Maybe it makes sense to get rid of the test-target until 781 is fixed (also the tests fail anyway).

No, all tests passed when I originally submitted it.
How about keeping USES=cmake:outsource?
This will be used in do-test, and will minimize the change later, when the fix 781.

yuri marked an inline comment as done.

.

yuri marked an inline comment as done.Feb 15 2018, 9:26 AM

100% tests pass.
It is formatted the way it should be after the upstream bug is fixed.

... then you should maybe retry to run the tests :)

[...]
[42/879] /usr/bin/c++   -I/wrkdirs/zpoudriere/ports/yuri/devel/range-v3/work/range-v3-0.3.0/include -O2 -pipe -fstack-protector -fno-strict-aliasing -std=c++11 -ftemplate-backtrace-limit=0 -Weverything -Werror -pedantic-errors -Wno-c++98-compat -Wno-c++98-compat-pedantic -Wno-weak-vtables -Wno-padded -Wno-missing-prototypes -Wno-missing-variable-declarations -Wno-shadow -Wno-old-style-cast -Wno-documentation -Wno-documentation-unknown-command -march=native -mtune=native -fcoroutines-ts -Ofast -g0 -DNDEBUG -MD -MT CMakeFiles/test.header.range.v3.view.sample.hpp.dir/headers/range/v3/view/sample.cpp.o -MF CMakeFiles/test.header.range.v3.view.sample.hpp.dir/headers/range/v3/view/sample.cpp.o.d -o CMakeFiles/test.header.range.v3.view.sample.hpp.dir/headers/range/v3/view/sample.cpp.o -c headers/range/v3/view/sample.cpp
FAILED: CMakeFiles/test.header.range.v3.view.sample.hpp.dir/headers/range/v3/view/sample.cpp.o
[...]

... then you should maybe retry to run the tests :)

[...]
[42/879] /usr/bin/c++   -I/wrkdirs/zpoudriere/ports/yuri/devel/range-v3/work/range-v3-0.3.0/include -O2 -pipe -fstack-protector -fno-strict-aliasing -std=c++11 -ftemplate-backtrace-limit=0 -Weverything -Werror -pedantic-errors -Wno-c++98-compat -Wno-c++98-compat-pedantic -Wno-weak-vtables -Wno-padded -Wno-missing-prototypes -Wno-missing-variable-declarations -Wno-shadow -Wno-old-style-cast -Wno-documentation -Wno-documentation-unknown-command -march=native -mtune=native -fcoroutines-ts -Ofast -g0 -DNDEBUG -MD -MT CMakeFiles/test.header.range.v3.view.sample.hpp.dir/headers/range/v3/view/sample.cpp.o -MF CMakeFiles/test.header.range.v3.view.sample.hpp.dir/headers/range/v3/view/sample.cpp.o.d -o CMakeFiles/test.header.range.v3.view.sample.hpp.dir/headers/range/v3/view/sample.cpp.o -c headers/range/v3/view/sample.cpp
FAILED: CMakeFiles/test.header.range.v3.view.sample.hpp.dir/headers/range/v3/view/sample.cpp.o
[...]

This seems to be a tests build problem. I did run them last night and now, and they build and pass on 11.1-STABLE:

<...>
204/205 Test #204: test.view.zip, ........................   Passed    0.00 sec
        Start 205: test.example.comprehensions,
205/205 Test #205: test.example.comprehensions, ..........   Passed    0.00 sec

100% tests passed, 0 tests failed out of 205

Total Test time (real) =   2.33 sec

What system is it failing on?

It's on HEAD here.

Yes, tests fail on 12.

Is there an ETA upstream for the build fix with cmake?

It now breaks in 10 with undefined reference to 'operator delete(void*, unsigned int)'

I asked on ports@ but nobody knows there. Need to research further why does this happen.