Page MenuHomeFreeBSD

Make std::experimental::filesystem work.
AbandonedPublic

Authored by ed on May 21 2017, 6:23 AM.
Tags
None
Referenced Files
Unknown Object (File)
Tue, Jan 21, 7:35 PM
Unknown Object (File)
Fri, Jan 10, 2:20 AM
Unknown Object (File)
Fri, Jan 3, 7:30 PM
Unknown Object (File)
Thu, Jan 2, 4:11 AM
Unknown Object (File)
Oct 8 2024, 1:42 PM
Unknown Object (File)
Sep 30 2024, 8:13 AM
Unknown Object (File)
Sep 28 2024, 11:31 PM
Unknown Object (File)
Sep 24 2024, 3:21 AM
Subscribers

Details

Reviewers
dim
emaste
Summary

The libc++ Makefile installs all of the header files under
experimental/*, but doesn't add the respective source files to SRCS.
This means compilation of sources that make use of these classes works,
but linkage fails.

Test Plan

I can now link a piece of software I'm writing that makes use of this
API.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Errors
SeverityLocationCodeMessage
Errorlib/libc++/Makefile:NAME1Bad Filename
Unit
No Test Coverage
Build Status
Buildable 9415
Build 9873: arc lint + arc unit

Event Timeline

dim requested changes to this revision.May 21 2017, 10:00 AM

No, not like this, please. The experimental sources are unstable, and there is no guarantee whatsoever that anything in there will stay as it is. This is also why I never added them to our libc++.so, to discourage people from actually using them. I have actively tried to avoid adding the experimental features for now, as I don't think these have a place in our base system. But if there really is some use for them, I will not stand in the way, of course.

Upstream compiles these into a separate libc++experimental.a, so specifically *not* in any shared library. Therefore, to be able to use the experimental features, you will have to pass an additional -lc++experimental option on the link command line, and all experimental features will be statically linked into your application.

If we do this, we should do it in a similar way.

This revision now requires changes to proceed.May 21 2017, 10:00 AM