meson/mesonbuild/compilers
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
..
__init__.py Fix flake8 issues (#3834) 2018-07-05 18:08:04 +00:00
c.py Sprinkle functools.lru_cache() in a few more places 2018-09-11 10:19:42 -07:00
c_function_attributes.py Add method to check for C/C++ function attributes 2018-09-07 11:52:15 -07:00
compilers.py Sprinkle functools.lru_cache() in a few more places 2018-09-11 10:19:42 -07:00
cpp.py Add method to check for C/C++ function attributes 2018-09-07 11:52:15 -07:00
cs.py Convert buildtype to optimization and debug options (#3489) 2018-08-18 20:39:47 +03:00
d.py Make sure static library files are passed properly to the linker 2018-09-06 05:18:08 +03:00
fortran.py Remove unnecessary -lquadmath from FORTRAN flags. 2018-09-02 18:25:09 +03:00
java.py macos: Rewrite install_name for dependent built libraries on install 2018-06-18 06:33:23 +00:00
objc.py Add 'Compiler.get_display_language' 2017-06-26 14:15:44 -04:00
objcpp.py Add 'Compiler.get_display_language' 2017-06-26 14:15:44 -04:00
rust.py Convert buildtype to optimization and debug options (#3489) 2018-08-18 20:39:47 +03:00
swift.py Convert buildtype to optimization and debug options (#3489) 2018-08-18 20:39:47 +03:00
vala.py Convert buildtype to optimization and debug options (#3489) 2018-08-18 20:39:47 +03:00