Copperspice was already marked BROKEN (everywhere). Adding a second
broken was unnecessary and masks the originally reason. I've been waiting
for the authors to fix the issues -- they are enthusiastic about
supporting BSD but paid work and lack of test machines have been pushing
back the new work. This effort is not dead though.
On FreeBSD clusters, this won't build (but it builds on my machine)
On DragonFly, the two removed TypeTrait.h patches are still required
(apparently this is a gcc thing, clang was happy enough without them)
Upstream is aware and working on it.
I may change this to BROKEN_FreeBSD when the missing patches are returned.
The BROKEN messages are pretty explicit, but there is an open PR on this
very issue so let's provide that bigger picture information instead.
Essentially "USES=compiler:c++11-lib" is not guaranteed to work on
FreeBSD release < 10 which is a significant issue.
I removed what appears to be a macos-only file from being built. I also
cleared ccache before rebuilding in poudriere, which succeeded. Hopefully
copperspice builds on cluster now (for F10+)
Somehow ccache must be responsible for it's local success. Given the
error message, it may be configured for mac rather than BSD or Linux.
Make broken (on amd64) until further notice. i386 is already broken.
Upstream made an attempt to make copperspice jobs safe. They got closer
but no cigar yet. The new version did built in poudriere for me
(F10/amd64) so I am unbreaking !F(8|9). I will check i386 and F9 and
lower and remove BROKEN if/as they pass. Without multijob support these
builds take hours (> 4 on dedicated machine, > 11 on bulk build)
I got this building locally but pkg-fallout and amdmi3 both report
failures across the board. Mark it broken everywhere.
F10/amd64: QBuffer::_q_emitSignals Unable to register method pointer,
verify signal/slot
I would consider copperspice "experimental" for the time being. The
developers tested it on linux, windows, and macos, but not BSD. Several
issues have been identified already:
* differences in BSD install from GNU install caused fatal build
failure (already fixed in v1.0.2)
* It's not jobs safe (not reproducible on Linux, I suspect this is
another difference of the install programs
* specs don't exist for any BSD
* qmutex was implemented for non-linux, non-windows
* libtool is missing --tag
* Makefile template missing dozens of lines to support OSTYPE_FREEBSD
(or OSTYPE_BSD ?) which also needs to be implemented
* FreeBSD 9 (and presumably 8) fails with "to_string" is not recognized
as std namespace despite using gcc48 to build
* FreeBSD10/i386 fails because of c++11 narrowing rules violations
The upsteam is already aware of some of these issues and is committed to
make CopperSpice work on BSD as a first class citizen. So this initial
import might be considered a work in progress. I've been working on a
jobs-safe problem workaround but hit another jobs-safe failure.
=====
Copperspice is a C++ library derived from the existing Qt 4.8 framework.
The goal was to change the core design of the libraries, leveraging
template functionality and C++11 capabilities.
The redesign allowed the Qt Meta-Object Compiler (moc) system to be
completely removed. Moc is a code generator and does not support many
aspects of C++ including templates, complex data types, static type
checking, and relies heavily on string comparisons. Removing moc improves
runtime performance, reduces the complexity of the build process, and
allows more issues to be detected at compile time.
Key features:
* Qt Meta-Object Compiler (moc) is obsolete
* Written in C++11
* Library links directory to any standard C++ application
* A template class can inherit from QObject
* Copperspice includes several Qt5 classes