summaryrefslogtreecommitdiff
path: root/mesonbuild/envconfig.py
Commit message (Collapse)AuthorAgeFilesLines
* modules/gnome: use envconfig for VAPIGENDylan Baker2021-11-011-0/+1
| | | | | we have a mechanism for doing "this could be an environment variable" let's use that.
* Add sccache support.Jussi Pakkanen2021-10-251-0/+19
|
* holders: Introduce HoldableObjectDaniel Mensinger2021-06-181-2/+2
|
* add cpu family cskyRandy Yates2021-05-181-0/+1
|
* dependency: Add JDK system dependencyTristan Partin2021-04-121-4/+8
| | | | | The JDK system dependency is important for detecting JDK include paths that may be useful when developing a JNI interface.
* mass rewrite of string formatting to use f-strings everywhereEli Schwartz2021-03-041-5/+5
| | | | performed by running "pyupgrade --py36-plus" and committing the results
* add loongarch supportXiaotian Wu2021-02-061-0/+2
|
* Fix misspellsAntonin Décimo2021-01-131-3/+3
| | | | Signed-off-by: Antonin Décimo <antonin.decimo@gmail.com>
* move get_env_var_pair to environmentDylan Baker2021-01-111-34/+2
| | | | This is only used in environment, so it should live there too.
* boost: default machine file properties to env var valuesDylan Baker2021-01-111-8/+0
| | | | | | | This both moves the env reading to configuration time, which is useful, and also simplifies the implementation of the boost dependency. The simplification comes from being able to delete basically duplicated code since the values will be in the Properties if they exist at all.
* Move BinaryTable environment lookups to EnvironmentDylan Baker2021-01-111-42/+21
| | | | | This means that all the env lookups are done once, at initial configure time. This has all of the expected advantages.
* pull env to program mappings out of BinaryType classDylan Baker2021-01-111-45/+45
| | | | | These really aren't pivotal to that class, and they're used outside of it. In a follow up patch they're not going to be used inside it at all.
* Merge pull request #8011 from dcbaker/submit/post-python36-cleanupsJussi Pakkanen2020-11-221-1/+1
|\ | | | | Python 3.6 cleanups
| * use real pathlib moduleDylan Baker2020-11-201-1/+1
| | | | | | | | | | We added the _pathlib module to work around defeciencies in python 3.5's implementation, since we now rely on 3.6 lets drop this
* | envconfig: use debug for "using * from environment variables messagesDylan Baker2020-11-211-1/+1
|/ | | | These are spammy, and being in the debug log is probably better anyway.
* cmake: Add cross compilation supportDaniel Mensinger2020-10-131-13/+84
|
* envconfig: fix return type of get_env_var_pairDylan Baker2020-09-161-4/+2
| | | | It doesn't return (None, None), it returns just None.
* external-project: New module to build configure/make projectsXavier Claessens2020-09-131-0/+1
| | | | | | | This adds an experimental meson module to build projects with other build systems. Closes: #4316
* typing: Fix code reviewDaniel Mensinger2020-09-081-5/+5
|
* typing: fix code reviewDaniel Mensinger2020-09-081-5/+5
|
* typing: fix envconfig typingDaniel Mensinger2020-09-081-1/+1
|
* Be stricter when detecting Windows/CygwinChristoph Reiter2020-08-301-2/+2
| | | | | | | | | | | | | | | | This removes the check for "mingw" for platform.system(). The only case I know where "mingw" is return is if using a msys Python under a msys2 mingw environment. This combination is not really supported by meson and will result in weird errors, so remove the check. The second change is checking sys.platform for cygwin instead of platform.system(). The former is document to return "cygwin", while the latter is not and just returns uname(). While under Cygwin it uname() always starts with "cygwin" it's not hardcoded in MSYS2 and starts with the environment name. Using sys.platform is safer here. Fixes #7552
* machine-files: deprecate the paths sectionDylan Baker2020-08-011-40/+0
|
* envconfig: Add [constants] section in machine filesXavier Claessens2020-06-291-28/+1
| | | | | | | Machine files already supports `+` operator as an implementation detail, since it's using eval(). Now make it an officially supported feature and add a way to define constants that are used while evaluating an entry value.
* envconfig: Add support SuperH SH-4Dylan Baker2020-06-191-2/+3
| | | | Fixes: #7358
* Updated to resolve issue identifying SGI CPUs on IRIX systemsEric Dodd2020-06-101-1/+5
|
* Add AVR to cpu families. Closes #7085.Jussi Pakkanen2020-05-111-0/+1
|
* envconfig: Always honor PKG_CONFIG_PATHDylan Baker2020-05-071-1/+1
| | | | | | | | The comment for this code is correct, but the code itself isn't. The way it's implemented in a cross compile we don't look at PKG_CONFIG_PATH at all. Fixes: #7062
* switch python2 %s for python3 .formatMichael2020-04-211-5/+5
|
* Recognize Hurd as platform/OSPino Toscano2020-04-101-0/+6
|
* Revert "Naturally use env vars a bit more to match Autoconf"Jussi Pakkanen2020-03-231-2/+2
| | | | This reverts commit 097dfc085e6a1bb3c670880134a52dcfca504be7.
* Naturally use env vars a bit more to match AutoconfJohn Ericson2020-03-231-2/+2
| | | | | | | | | | | | | | | | | | | | | | PR #6363 made it so our interpretation of env vars no longer clashed with Autoconf's: if both Meson and Autoconf would read and env var, both would do the same things with the value they read. However, there were still cases that autoconf would read an env var when meson wouldn't: - Autoconf would use `CC` in cross builds too - Autoconf would use `CC_FOR_BUILD` in native builds too. There's no reason Meson can't also do this--if native cross files overwrite rather than replace env vars, cross files can also overwrite rather than replace env vars. Because variables like `CC` are so ubiquitous, and because ignoring them in cross builds just makes those builds liable to break (and things more complicated in general), we bring Meson's behavior in line with Autoconf's.
* Fix legacy env var support with crossJohn Ericson2020-03-231-49/+65
| | | | Fix #3969
* -Add xc16 and c2000 C,Cpp toolchain supportalanNz2020-03-211-0/+3
|
* envconfig: Make compiler and linker environment variables matchDylan Baker2020-03-171-7/+23
|
* Add m68k to known cpus for Motorola 68000 series processorsDylan Baker2020-01-231-0/+1
| | | | Fixes #6492
* environment: Replace LD with <LANG>LDDylan Baker2020-01-221-1/+9
| | | | | | | | | | | | | | | | | | | | | The rust code is ugly, because rust is annoying. It doesn't invoke a linker directly (unless that linker is link.exe or lld-link.exe), instead it invokes the C compiler (gcc or clang usually) to do it's linking. Meson doesn't have good abstractions for this, though we probably should because some of the D compilers do the same thing. Either that or we should just call the c compiler directly, like vala does. This changes the public interface for meson, which we don't do unless we absolutely have to. In this case I think we need to do it. A fair number of projects have already been using 'ld' in their cross/native files to get the ld binary and call it directly in custom_targets or generators, and we broke that. While we could hit this problem again names like `c_ld` and `cpp_ld` are far less likely to cause collisions than `ld`. Additionally this gives a way to set the linker on a per-compiler basis, which is probably in itself very useful. Fixes #6442
* envconfig: add pkg_config_libdir propertyStéphane Cerveau2020-01-221-0/+6
| | | | | In order to unify the use of sysroot in the cross-file, the pkg_config_libdir can now be passed directly in the file.
* envconfig: s390x is 64bitDylan Baker2020-01-151-0/+1
| | | | s390 is the 31/32bit variant, s390x is the 64 bit.
* Add s390 to list of known architecturesDylan Baker2020-01-151-0/+1
| | | | Fixes #6411
* types: import typing as T (fixes #6333)Daniel Mensinger2020-01-081-32/+32
|
* Allow selecting the dynamic linkerDylan Baker2019-12-021-0/+2
| | | | | | | This uses the normal meson mechanisms, an LD environment variable or via cross/native files. Fixes: #6057
* Fix typos found by codespellWolfgang Stöggl2019-11-061-1/+1
| | | | - Typos were found by codespell v1.16.0
* Fix all flake8 warningsDaniel Mensinger2019-10-201-2/+0
|
* envconfig: Add Alpha CPU familyMatt Turner2019-10-151-0/+2
|
* envconfig: Add MicroBlaze CPU familyNathan Rossi2019-09-261-0/+1
| | | | | | Add the CPU family for the MicroBlaze processor. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
* mesonlib.split_args/quote_arg/join_argsAleksey Gurtovoy2019-09-051-3/+3
|
* envconfig: make MachineInfo.is_windows and is_cygwin match mesonlibDylan Baker2019-08-271-2/+2
| | | | The mesonlib versions are slightly more specific in what they accept.
* envconfig: Add missing MachineInfo is_<os> methodsDylan Baker2019-08-271-0/+13
| | | | | mesonlib defines is_sunos, is_dragonflybsd, and is_freebsd, which MachineInfo does not. This should be corrected.
* NetBSD detection in envconfig.MachineInfonia2019-08-231-0/+6
|