Fedora (and, I supposed, most recent Linux distros) build everything
with -Werror=format-security. If you attempt to build with
-DSLIC3R_PERL_XS (which we need in order to run the test suite), the
build fails because of two strings in the Perl XS code:
/usr/bin/perl -MExtUtils::XSpp::Cmd -e xspp -- -t "/builddir/build/BUILD/PrusaSlicer-version_2.0.0-rc2/xs/xsp/typemap.xspt" "/builddir/build/BUILD/PrusaSlicer-version_2.0.0-rc2/xs/xsp/Print.xsp":585:31: error: format not a string literal and no format arguments [-Werror=format-security]
Ths fixes up two instances of that.
template.
Reworked naming of the plater exports to not use the output file name
template, but to derive the file name from the first printable object's name.
Fixed error handling: Reimpemented the Perl's "eval" blocks
as try / catch blocks.
Removed libslic3r from the default include paths for all modules but
libslic3r. Now headers from libslic3r need to be included with an
explicit path (libslic3r/libslic3r.h etc)
Split the localization macros into I18N.{cpp,h}
replaced Print & SLAPrint pointers with BackgroundProcessing pointer
at the GLCanvas3D level, so that the Print & SLAPrint access will be
synchronized with the current printer technology.
by PrintObject::region_volumes. This is due to the way Print::apply()
works, it does not invalidate an existing PrintObject if a new region
is added to the print.
added unique IDs to the Model / ModelObject / ModelVolume objects,
added a copy of Model hierarchy at the Print,
WIP: new Print::apply() method to update the Print's copy of Model,
to update the Print's PrintObjects, to update status of the Print and
PrintObjects, and to possibly stop the background processing.