~ubuntu-support-team/meson/+git/meson:lang-enum

Last commit made on 2020-08-03
Get this branch:
git clone -b lang-enum https://git.launchpad.net/~ubuntu-support-team/meson/+git/meson

Branch merges

Branch information

Name:
lang-enum
Repository:
lp:~ubuntu-support-team/meson/+git/meson

Recent commits

eaf6343... by John Ericson <email address hidden>

Merge remote-tracking branch 'upstream/master' into lang-enum

70edf82... by Antony Chan <email address hidden>

Make meson recognize the Qualcomm LLVM toolchain

Meson calls `path/to/clang++ --version` to guess which build toolchain the
user has picked to build the source code. For the Qualcomm LLVM toolchain,
the output have an unusual output as shown below:

```
clang version 8.0.12
Snapdragon LLVM ARM Compiler 8.0.12 (based on llvm.org 7.0+)
Target: arm-unknown-linux-gnueabi
Thread model: posix
Repository: (ssh://git-hexagon-aus.qualcomm.com:...)
InstalledDir: /pkg/qct/software/llvm/release/arm/8.0.12/bin
```

Another unusual pattern is the output of `path/to/ld.qcld --version`:

```
ARM Linker from Snapdragon LLVM ARM Compiler Version 8.0.12
ARM Linker based on LLVM version: 8.0
```

The Meson logic is modified accordingly so that Meson can correctly
determine toolchain as "LLVM aarch64 cross-compiler on GNU/Linux64 OS".

This is the expected output of
`meson --native-file native_file.ini --cross-file cross_file.ini build/aarch64-debug/`:

```
...
C++ compiler for the host machine: ... (clang 8.0.12 "clang version 8.0.12")
C++ linker for the host machine: ... ld.lld 8.0.12
...
```

3040f3c... by Dylan Baker <email address hidden>

Merge pull request #6597 from dcbaker/full-project-config

Set project and meson options in cross/native files

894623a... by Ebrahim Byagowi <email address hidden>

docs/users: Add HarfBuzz [skip ci]

Proudly a meson user now

4d2a170... by Dylan Baker <email address hidden>

run dircondensor.py

3a4d8dd... by Dylan Baker <email address hidden>

update version from 0.55. to 0.56

591e6e9... by Dylan Baker <email address hidden>

Put machine file and cmd line parsing in Environment

This creates a full set of option in environment that mirror those in
coredata, this mirroring of the coredata structure is convenient because
lookups int env (such as when initializing compilers) becomes a straight
dict lookup, with no list iteration. It also means that all of the
command line and machine files are read and stored in the correct order
before they're ever accessed, simplifying the logic of using them.

5db3860... by Dylan Baker <email address hidden>

push all config-file settings into coredata.set_default_options

This puts all of them together, in the next patch they'll be pulled back
out, but it's convenient to start that refactor by moving them all
there, then moving them into env as a whole.

5358765... by Dylan Baker <email address hidden>

mesonlib: Add repr() methods to PerMachine classes

Which is super helpful in debuggers

601789c... by Dylan Baker <email address hidden>

machine-files: deprecate the paths section