summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-10-25Bump version numbers for 0.64.0.rc1.Jussi Pakkanen
2022-10-25tests: Add nasm compiler checksXavier Claessens
2022-10-25nasm: Use an hello world test that works on 32bits tooXavier Claessens
Fixes: #10956
2022-10-25Fix native compilation on ARM64 WindowsGustavoLCR
Move `detect_native_windows_arch()` to `mesonlib/universal.py` and rename it to `windows_detect_native_arch()` Use `IsWow64Process2()` to detect native architecture if available Use native `vcvarsarm64.bat` to initialize vsenv if available
2022-10-25Skip wrapdb test if there is no connectivity.Jussi Pakkanen
2022-10-24Add missing since annotations in docsElliott Sales de Andrade
This is based on searching for `@FeatureNew*` decorators. There is also one correction to a version in a decorators; `build_by_default` was added in #1303, which is 0.38.0, not 0.40.0.
2022-10-24ci: run `brew update` before `brew install`Carlo Cabrera
This makes sure we don't end up picking up an older version of LLVM that does not work.
2022-10-24Revert "ci: Fix llvm detection on macOS CI"Carlo Cabrera
Fixed in Homebrew/homebrew-core#112154. This reverts commit c20fb659f600149c08d635fc3750f03632164b9b.
2022-10-25Condense test directory numbers.Jussi Pakkanen
2022-10-24Move JNISystemDependency to dependencies.base.detect_compilerTristan Partin
Only searches if the project already added that language before.
2022-10-24Fix mismatched param names between Compiler and BasicLinkerIsCompilerMixinTristan Partin
2022-10-24Use f-strings in JavaCompilerTristan Partin
2022-10-24Add missing compiler functions to JavaCompilerTristan Partin
Fixes #2571
2022-10-24basic support for oneapi compilersRobert Cohn
2022-10-24Add MASM compilerXavier Claessens
ml and armasm are Microsoft's Macro Assembler, part of MSVC.
2022-10-24Not all compilers support depfileXavier Claessens
2022-10-24hotdoc module: add partially typed kwargsEli Schwartz
We accept a list of known kwargs of required types, but also arbitrary kwargs understood by the hotdoc program (sometimes via extensions). Now that we can partially type-check kwargs, do so here.
2022-10-24add option to typed_kwargs that allows unknown kwargs throughEli Schwartz
Some functions cannot be fully type checked, because our API allows fully arbitrary kwargs and treats them as data to pass through to the underlying feature. For example, hotdoc command line arguments. This change allows us to type check some kwargs with known types and possibly required status, and make their values consistent(ly defaultable), while preserving the optional nature of the additional kwargs.
2022-10-24Accept disablers in summary valuesElliott Sales de Andrade
They are commonly used as a replacement for a `dependency`, and not accepting them in `summary` breaks the last example in [1] when used as a value. [1] https://mesonbuild.com/Disabler.html#disabling-parts-of-the-build
2022-10-24nasm: Harcode default path on WindowsXavier Claessens
NASM's installer does not add itself into PATH, even when installed by choco.
2022-10-24Add missing doc for NASM languageXavier Claessens
2022-10-24Add yasm as fallback for nasm languageXavier Claessens
2022-10-24Add NASM compilerXavier Claessens
2022-10-24run_mypy: add extra logging and permit specifying files to checkEli Schwartz
If those files are not yet known to be typed, skip them. This makes it possible to trivially check a shortlist of files that were just changed and see if they regress our mypy coverage. Ideal for use in a git pre-commit hook.
2022-10-23Merge pull request #10916 from xclaesse/preprocessJussi Pakkanen
Add cc.preprocess() method
2022-10-23gnulike: Fix preprocessing files with any extensionXavier Claessens
2022-10-23Add doc and release notes for cc.preprocess()Xavier Claessens
2022-10-23Add unit test for cc.preprocess()Xavier Claessens
2022-10-23vs backend: Add support for CompileTargetXavier Claessens
Since vs backend only support the C compiler, everything else are custom targets. Convert CompileTarget into a Generator to reuse existing code. This will be useful in the future to support transpilers, and assemblers.
2022-10-23Add cc.preprocess() method for c-like compilersXavier Claessens
This introduce a new type of BuildTarget: CompileTarget. From ninja backend POV it is the same thing as any other build target, except that it skips the final link step. It could be used in the future for transpilers too.
2022-10-23Compilers: Add a preprocessor mode for clike compilersXavier Claessens
A compiler object can now return a list of "modes", they are new compiler object specialized for a specific task.
2022-10-23Fix excluding sources for static lib in both_libraries()Xavier Claessens
When using both_libraries(), or library() with default_library=both, we remove all sources from args and kwargs when building the static library, and replace them by the objects from the shared library. But sources could also come from any InternalDependency, in which case we currently build them twice (not efficient) and link both objects into the static library. It also means that when we needlessly build those source for the static library, it miss order dependency on generated headers that we removed from args/kwargs, which can cause build errors in the case the source from static lib is compiled before the header in shared lib gets generated. This happened in GLib: https://gitlab.gnome.org/GNOME/glib/-/merge_requests/2917.
2022-10-23Fix typos in docsElliott Sales de Andrade
2022-10-22doc: Fix linkZhao, Gang
2022-10-21msubprojects: Fix issues when updating all wrapsXavier Claessens
When updating all wraps, it is not an error if some have not been downloaded or some does not have a wrap file.
2022-10-19BUG: Don't add debug files as targets when not building in debug modeThomas Li
2022-10-18ninja: Simplify getting rule name from compiler objectXavier Claessens
2022-10-14hotdoc: Fix typo in argumentNirbheek Chauhan
2022-10-13fix: don't set FavorSizeOrSpeed in vs backend if optimization disabled (/Od ↵Luke Elliott
set). Debugging is broken with clang-cl when FavorSizeOrSpeed is set.
2022-10-13Add b_thinlto_cache for automatically configuring incremental ThinLTOTatsuyuki Ishi
2022-10-13clang: Support ThinLTO with moldTatsuyuki Ishi
2022-10-13linkers: Add missing mold entries to __init__Tatsuyuki Ishi
2022-10-12Merge pull request #10357 from xclaesse/update-wrapdbJussi Pakkanen
Make `meson wrap update` command update all wraps in parallel
2022-10-12interpreter: Fix msg when none of the dependencies have namesNirbheek Chauhan
This case is identical to the case when there's no dependencies specified, so it should behave the same way.
2022-10-12interpreter: Don't say we're using -lfoo args when we're notNirbheek Chauhan
cc.compiles(), and other compiler checks that use cc.compiles() under the hood, do not use link args at all when doing the compile check, so messages like this: ``` Checking if "have zlib" with dependency -lz compiles: YES ``` is very misleading. The compiler check command-line for that is: ``` cc [...]/testfile.c -o [...]/output.obj -c -D_FILE_OFFSET_BITS=64 -O0 ``` Note the lack of linker args.
2022-10-11Make `meson wrap update` command update all wraps in parallelXavier Claessens
This moves the implementation into msubprojects because it has all the infrastructure to update wraps in parallel while keeping "meson wrap" UX.
2022-10-10Move some code from wraptool.py to wrap.pyXavier Claessens
2022-10-10wrap: Ignore directories that have a .wrap with the same nameXavier Claessens
If we update e.g. glib.wrap from wrap-git with directory=glib to wrap-file with directory=glib-2.70 we could still have the glib directory that is not referenced by any .wrap file any more. We should still ignore that directory otherwise it overrides the glib.wrap we parsed.
2022-10-10Merge pull request #8941 from xclaesse/wrapdbJussi Pakkanen
Automatically use WrapDB fallback
2022-10-10Document and test new WrapDB auto fallbackXavier Claessens