opt.add_option('--warnings-are-errors', action='store_true', default=False, help='build with -Werror')
opt.add_option('--wx-config', help='path to wx-config')
opt.add_option('--enable-asan', action='store_true', help='build with asan')
+ opt.add_option('--disable-more-warnings', action='store_true', default=False, help='disable some warnings raised by Xcode 15 with the 2.16 branch')
def configure(conf):
conf.load('compiler_cxx')
'-Wwrite-strings',
# getMessengerLogger() in the grok code triggers these warnings
'-Wno-nonnull',
- # These next 5 are for Xcode 15.0.1 with the v2.16.x-era
- # dependencies; maybe they aren't necessary when building
- # v2.1{7,8}.x
'-Wno-error=deprecated',
- '-Wno-deprecated-builtins',
- '-Wno-deprecated-declarations',
- '-Wno-enum-constexpr-conversion',
- '-Wno-deprecated-copy',
# I tried and failed to ignore these with _Pragma
'-Wno-ignored-qualifiers',
'-D_FILE_OFFSET_BITS=64',
'-std=c++11'])
+ if conf.options.disable_more_warnings:
+ # These are for Xcode 15.0.1 with the v2.16.x-era
+ # dependencies; maybe they aren't necessary when building
+ # v2.1{7,8}.x
+ conf.env.append_value('CXXFLAGS', ['-Wno-deprecated-builtins',
+ '-Wno-deprecated-declarations',
+ '-Wno-enum-constexpr-conversion',
+ '-Wno-deprecated-copy'])
+
if conf.options.warnings_are_errors:
conf.env.append_value('CXXFLAGS', '-Werror')
conf.env.append_value('CXXFLAGS', ['-Wno-cast-function-type'])
# Most gccs still give these warnings from boost::optional
conf.env.append_value('CXXFLAGS', ['-Wno-maybe-uninitialized'])
- if int(gcc[0]) > 4:
+ if int(gcc[0]) > 8:
# gcc 4.8.5 on Centos 7 does not have this warning
+ # gcc 7.5.0 on Ubuntu 18.04 and gcc 8.3.0 on Debian 10 do, but
+ # I didn't manage to turn it back off again with a pragma
conf.env.append_value('CXXFLAGS', ['-Wsuggest-override'])
if conf.options.enable_debug:
uselib="ZIP",
define_name='DCPOMATIC_HAVE_ZIP_FILE_ADD'
)
+ conf.check_cxx(fragment="""
+ #include <zip.h>
+ int main() { int error; zip_open("foo", ZIP_RDONLY, &error); }
+ """,
+ mandatory=False,
+ msg="Checking for ZIP_RDONLY",
+ uselib="ZIP",
+ define_name='DCPOMATIC_HAVE_ZIP_RDONLY'
+ )
# libbz2; must be explicitly linked on macOS for some reason
conf.check_cxx(fragment="""