summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2022-05-25Fix ultra-strict build with clang 12HEADmasterDavid Robillard1-4/+10
2021-01-01Avoid trying to use both C99 and C11 on the same command lineDavid Robillard1-1/+1
2020-12-18Windows: Always build against shared CRTDavid Robillard1-0/+4
2020-11-25Hack Sphinx tool to not load gnu_dirsDavid Robillard1-1/+0
I do not use this tool because it's not quite right. It doesn't seem super appropriate for tools to be loading things like this anyway, requiring DOCDIR to be defined in whatever way the project deems fit seems fine.
2020-11-25Upgrade to waf 2.0.21David Robillard26-104/+255
2020-11-11Don't add Wl,--no-undefined when using sanitizersDavid Robillard1-1/+8
This causes linker errors at runtime.
2020-11-10Support building pkg-config files from templates in subdirectoriesDavid Robillard1-1/+8
2020-10-29Make Doxygen man page installation optionalDavid Robillard1-5/+15
2020-10-27Fix running testsDavid Robillard1-2/+2
2020-10-25Fix spurious error message in projects without testsDavid Robillard1-0/+2
2020-10-25Rename test_wrapper option to wrapperDavid Robillard1-3/+3
This can be used in projects without tests, particularly when cross-compiling.
2020-10-15Fix checking for gcovDavid Robillard1-4/+6
2020-10-15Print exceptionsDavid Robillard1-6/+6
2020-09-26Fix ExecutionEnvironment for older PythonDavid Robillard1-1/+1
2020-09-26Fix check for gcovDavid Robillard1-6/+10
2020-09-26Fix autowaf.check_function()David Robillard1-1/+1
2020-09-26Fix compiler flag checks on ancient GCCDavid Robillard1-12/+18
2020-08-14Don't define HAVE_GCOV in configuration headersDavid Robillard1-4/+4
2020-08-14Remove top level include flagDavid Robillard1-3/+0
2020-08-14Only set CFLAGS and CXXFLAGS if they are unset in the environmentDavid Robillard1-4/+11
This provides reasonable conservative optimization defaults, but allows users or packagers total control over the flags if necessary.
2020-08-14Remove redundant CFLAGSDavid Robillard1-2/+2
These are set by waf as appropriate based on the type of target.
2020-08-14Remove old and unused debug_by_default parameterDavid Robillard1-10/+6
2020-08-13Remove -fstrict-overflow flagsDavid Robillard1-2/+0
This can cause warnings when used in certain commands, and is enabled by -O2 and higher anyway.
2020-08-13Fix C++ compiler check for ultra-strict buildsDavid Robillard1-1/+1
2020-07-17Fix ultra-strict warnings for C++-only projectsDavid Robillard1-34/+54
2020-07-15Disable Wno-unknown-warning-option in clang if Werror is onDavid Robillard1-0/+4
This prevents the build from breaking with older compilers.
2020-07-15Fix configure checks with strict warnings and WerrorDavid Robillard1-5/+28
2020-07-15Fix system header warning suppression to not include everythingDavid Robillard1-10/+22
The previous hacky solution was troublesome because it included essentially every package in every target. This uses waf decorator magic to instead add isystem flags for ever dependency of that actual task. Unfortunately, it does not seem possible to instead replace the existing include flags (or at least I can't figure out how), so the flags themselves are still pretty spammy and redundant.
2020-07-07Fix language checks to actually fail, and support optional languagesDavid Robillard1-4/+9
2020-07-05Make add_compiler_flags() a top level functionDavid Robillard1-25/+26
So it can be used with any env.
2020-07-05Disable a few warnings nobody will ever missDavid Robillard1-4/+8
2020-07-04Change warning functions to work with any environmentDavid Robillard1-24/+32
This allows them to be used in special build targets, for example to test stricter warnings for headers.
2020-07-04Add simpler and stricter warning flag mechanismDavid Robillard1-42/+220
2020-07-04Use raw strings for regular expressionsDavid Robillard1-4/+4
Fixes flake8 warning W605.
2020-07-04Remove make_simple_dox()David Robillard1-42/+0
2020-07-04Cleanup: Remove unused variableDavid Robillard1-1/+0
2020-07-04Cleanup: Use spaces for code snippet indentationDavid Robillard1-2/+2
Fixes flake8 warnings W191 and E101.
2020-07-04Cleanup: Fix long linesDavid Robillard1-8/+13
Fixes flake8 warning E501.
2020-07-04Cleanup: Use two spaces before inline commentsDavid Robillard1-3/+3
Fixes flake8 warning E261.
2020-07-04Cleanup: Fix top-level Python spacingDavid Robillard1-0/+42
Fixes flake8 warning E302.
2020-06-21Add missing importlib submodule importsDavid Robillard1-0/+2
2020-06-14Make conf.check_function work with strict warningsDavid Robillard1-2/+12
2020-04-26Don't write tags header to posts if it is emptyDavid Robillard1-1/+2
2020-04-19Allow specifying library name in set_lib_env()David Robillard1-2/+3
2020-04-05Hack MSVC static library paths to avoid clashesDavid Robillard1-2/+6
The default waf configuration uses .lib for both static libraries and the manifest for DLLs, which is (somehow) the convention on Windows, but causes build errors because multiple targets produce the same outputs. Switch to using the UNIX convention ".a" (which is not unheard of on Windows, and is the approach used by Meson) to avoid this problem.
2020-04-02Only check for gcov when tests are enabledDavid Robillard1-1/+1
2020-04-02Update to waf 2.0.19David Robillard14-92/+864
2020-04-02Fix building subprojects in their own directoriesDavid Robillard1-1/+1
2020-02-16Cleanup: Format codeDavid Robillard1-1/+4
2020-02-16Remove top_entries feature of read_ttl_newsDavid Robillard1-5/+1