# -*- mode: python; -*- Import("env") env = env.Clone() # GCC emits a warning on both v2 and v3 toolchains when compiling filesystem. # We should check if this is still needed when doing boost upgrades in the future. if env.ToolchainIs('GCC'): env.AppendUnique(CXXFLAGS=['-Wno-overloaded-virtual']) env.Library('boost_system', ['libs/system/src/error_code.cpp']) env.Library('boost_filesystem', [ 'libs/filesystem/src/codecvt_error_category.cpp', 'libs/filesystem/src/operations.cpp', 'libs/filesystem/src/path.cpp', 'libs/filesystem/src/path_traits.cpp', 'libs/filesystem/src/portability.cpp', 'libs/filesystem/src/unique_path.cpp', 'libs/filesystem/src/utf8_codecvt_facet.cpp', 'libs/filesystem/src/windows_file_codecvt.cpp', ], LIBDEPS=[ 'boost_system', ]) env.Library('boost_program_options', [ 'libs/program_options/src/cmdline.cpp', 'libs/program_options/src/config_file.cpp', 'libs/program_options/src/convert.cpp', 'libs/program_options/src/options_description.cpp', 'libs/program_options/src/parsers.cpp', 'libs/program_options/src/positional_options.cpp', 'libs/program_options/src/split.cpp', 'libs/program_options/src/utf8_codecvt_facet.cpp', 'libs/program_options/src/value_semantic.cpp', 'libs/program_options/src/variables_map.cpp', 'libs/program_options/src/winmain.cpp', ], # Because `::environ` is resolved in `/usr/lib/crt1.o` on FreeBSD, this library needs to be # marked `incomplete` on FreeBSD. LIBDEPS_TAGS=[] if not env.TargetOSIs('freebsd') else [ 'illegal_cyclic_or_unresolved_dependencies_whitelisted', ]) env.Library('boost_iostreams', [ 'libs/iostreams/src/file_descriptor.cpp', 'libs/iostreams/src/mapped_file.cpp', ], LIBDEPS=[ 'boost_system', ])