meson/mesonbuild
Nirbheek Chauhan 1af704a509 Sprinkle functools.lru_cache() in a few more places
This improves the backend generation time for gst-build from 7.4s to
6.6s. This is probably all the low-hanging fruit we can get, further
improvements will probably require refactoring, moving to pathlib.Path
or reimplementing CompilerArgs:

   222045    0.551    0.000    1.324    0.000 compilers.py:666(__iadd__)
     3691    0.230    0.000    0.885    0.000 ninjabackend.py:99(write)
   233560    0.441    0.000    0.701    0.000 posixpath.py:75(join)
      882    0.141    0.000    0.636    0.001 backends.py:509(generate_basic_compiler_args)
   256301    0.248    0.000    0.576    0.000 compilers.py:562(_can_dedup)
    37369    0.035    0.000    0.466    0.000 compilers.py:652(extend_direct)
    74650    0.067    0.000    0.431    0.000 compilers.py:641(append_direct)
   158153    0.089    0.000    0.405    0.000 ninjabackend.py:129(<lambda>)
      845    0.064    0.000    0.391    0.000 ninjabackend.py:279(get_target_generated_sources)
    58161    0.070    0.000    0.317    0.000 backends.py:217(get_target_generated_dir)
   216825    0.175    0.000    0.275    0.000 ninjabackend.py:48(ninja_quote)
      845    0.058    0.000    0.255    0.000 ninjabackend.py:2289(guess_external_link_dependencies)
      845    0.068    0.000    0.239    0.000 backends.py:793(get_custom_target_provided_libraries)
    52101    0.030    0.000    0.237    0.000 compilers.py:716(append)
  1319326    0.231    0.000    0.231    0.000 {built-in method builtins.isinstance}
  1189117    0.229    0.000    0.229    0.000 {method 'startswith' of 'str' objects}
     3235    0.102    0.000    0.228    0.000 compilers.py:614(to_native)

Note: there are 845 build targets.
2018-09-11 10:19:42 -07:00
..
backend Sprinkle functools.lru_cache() in a few more places 2018-09-11 10:19:42 -07:00
compilers Sprinkle functools.lru_cache() in a few more places 2018-09-11 10:19:42 -07:00
dependencies Add missing reporting of some methods tried to find the dependency 2018-09-10 21:02:18 +03:00
modules Improve windows resource compiler executable selection 2018-09-10 21:03:41 +03:00
scripts Merge pull request #4016 from thiblahute/hotdoc 2018-08-29 21:18:26 +03:00
wrap wrap: Redirect git's stdin to DEVNULL 2018-09-03 21:12:09 +03:00
__init__.py Renamed meson package to mesonbuild so that we can have a script named meson in the same toplevel dir. 2016-01-16 17:35:29 +02:00
astinterpreter.py cleanup: Remove redundant parentheses 2017-01-18 21:22:47 +02:00
build.py mesonbuild: move subdir generation along link dep generation 2018-09-11 03:03:30 -07:00
coredata.py Set wrap_mode to None by default to know if user passed a value 2018-08-22 15:15:54 -04:00
environment.py d: fix how the DC variable is handled 2018-08-27 23:48:51 +03:00
interpreter.py Add method to check for C/C++ function attributes 2018-09-07 11:52:15 -07:00
interpreterbase.py interpreter: Add support for dict addition 2018-08-14 23:46:42 +03:00
linkers.py Fallback to LDC as static linker when not in MSVC build environment 2018-08-20 22:27:31 +03:00
mconf.py Remove useless __main__ in files that cannot be executed 2018-08-22 15:15:54 -04:00
mesonlib.py PkgConfigDependency: Fix library path search order 2018-08-08 05:45:45 -07:00
mesonmain.py Add --fatal-meson-warnings command line option 2018-09-04 09:01:39 -04:00
minit.py Call it gnu_symbol_visibility instead. 2018-08-09 19:46:49 +03:00
minstall.py Revert symlink copy behaviour. Closes #4069. 2018-08-23 21:53:38 -07:00
mintro.py Remove useless __main__ in files that cannot be executed 2018-08-22 15:15:54 -04:00
mlog.py Add --fatal-meson-warnings command line option 2018-09-04 09:01:39 -04:00
mparser.py Warn for future keyword (#3908) 2018-07-27 14:31:54 +03:00
mtest.py Guard against the process redirecting stdout. Closes #3967. 2018-09-06 19:19:32 +03:00
optinterpreter.py UserFeatureOption: Default to 'auto' when no value specified 2018-07-25 09:55:16 -04:00
rewriter.py Always build parser objects anew to avoid leaking old data. 2018-03-27 00:39:45 +03:00