446 Commits

Author SHA1 Message Date
Stone Tickle
755c9b8072
remove broken stack overflow checking 2022-04-18 10:27:48 -05:00
Stone Tickle
9c19548981
collect diagnostics and sort them in the output 2022-04-18 10:27:47 -05:00
Stone Tickle
d6ad6365fe
add tc_disabler to tc_all 2022-04-18 10:27:46 -05:00
Stone Tickle
cecf889445
move obj_type_to_tc_type 2022-04-18 10:27:46 -05:00
Stone Tickle
bd7662956c
add interp_warning() 2022-04-18 10:27:46 -05:00
Stone Tickle
b60e20a5ef
fix get_variable() function 2022-04-18 10:27:45 -05:00
Stone Tickle
1fc8da34ce
enable pure arithmetic 2022-04-18 10:27:45 -05:00
Stone Tickle
26e1101923
improve pure function handling / var assignment 2022-04-18 10:27:44 -05:00
Stone Tickle
3b0ff56282
add tc_disabler 2022-04-18 10:27:43 -05:00
Stone Tickle
7eeb327f1f
call pure functions with known arguments 2022-04-18 10:27:43 -05:00
Stone Tickle
12921b9436
add UNREACHABLE and UNREACHABLE_RETURN macro 2022-04-18 10:27:42 -05:00
Stone Tickle
3004ac2b10
add if subtype to differentiate if and else if 2022-04-18 10:27:42 -05:00
Stone Tickle
200d0034a2
implement typechecking for obj_typeinfo 2022-04-18 10:27:42 -05:00
Stone Tickle
464abe831a
annotate return type of all functions 2022-04-18 10:27:38 -05:00
Stone Tickle
3227217b6a
add tc_any 2022-04-18 10:26:02 -05:00
Stone Tickle
b0a78d27c8
stub analyze.c 2022-04-18 10:25:36 -05:00
illiliti
e826732029
support gnu_symbol_visibility kwarg 2022-04-18 10:24:01 -05:00
illiliti
57dcf96476
support obj_both_libs everywhere 2022-04-18 10:18:08 -05:00
illiliti
9ead504555
allow reusing build_target_extract_objects 2022-04-18 10:16:38 -05:00
illiliti
f28296ee70
treat invalid linker flags as errors 2022-04-07 09:54:46 -05:00
Stone Tickle
3d9c2e744c
speed up dict += dict
See 2855d67b50c04cb3b06062ae5b757f23f490862e for motivation.
2022-04-07 09:38:17 -05:00
Stone Tickle
e194a670a5
remove maximum envvar/argument limit for run_cmd 2022-04-07 09:37:31 -05:00
Stone Tickle
98e52edfb6
implement pkgconfig module 2022-04-04 08:33:22 -05:00
Stone Tickle
2cc3d4c5e5
implement descriptive type annotations 2022-04-03 19:23:54 -05:00
Stone Tickle
d816e0f196
remove unused wk_get_str prototype 2022-04-01 10:55:05 -05:00
Stone Tickle
9f4e6e6373
add pkgconf escape function 2022-04-01 10:54:53 -05:00
Stone Tickle
3f3e7ccc27
add {custom_target,file}_is_linkable functions 2022-04-01 10:54:28 -05:00
Stone Tickle
12c4f25241
seperate dependency type from other flags 2022-03-31 09:18:52 -05:00
Stone Tickle
3a8d40e1bd
add both_libs object 2022-03-30 12:06:51 -05:00
Stone Tickle
b3f0443138
dup array by default in obj_array_extend
this has been the source of too many bugs.  for the fast version use obj_array_extend_nodup
2022-03-29 21:10:47 -05:00
Stone Tickle
aca22350aa
coerce soname from int to string 2022-03-29 12:40:21 -05:00
Stone Tickle
d359c69ba2
implement override_find_program
note: the usage of this override has not been implemented
2022-03-29 12:40:16 -05:00
Stone Tickle
a4428e61d8
add order deps from link_with dependencies 2022-03-27 19:02:46 -05:00
illiliti
19ed9aeffd
custom_target: implement feed 2022-03-19 21:35:09 -05:00
illiliti
57cfd6c4a4
custom_target: add stub feed 2022-03-19 21:34:58 -05:00
Stone Tickle
86790a3634
support subproject_dir: kw 2022-03-11 21:13:46 -06:00
Stone Tickle
6ef0d91a66
support @BUILD_DIR@ in generator arguments 2022-03-11 13:45:07 -06:00
Stone Tickle
56227ed81b
always coerce environment preemptively
This ensures that MESON_BUILD_ROOT and MESON_SOURCE_ROOT are always set
correctly.  It also simplifies env to envp, and makes more type errors
catchable during configure.
2022-03-11 06:49:36 -06:00
Stone Tickle
474f9ee19b
add typecheck_dict 2022-03-10 17:38:56 -06:00
Stone Tickle
b8e6863b51
implement build_by_default
This means that now muon generated build.ninjas don't build all targets
by default.
2022-03-10 10:53:16 -06:00
Stone Tickle
cbd2f45bd1
implement custom target link_depends 2022-03-10 10:50:22 -06:00
Stone Tickle
f6f2b8c710
pass common target arguments as a struct 2022-03-10 10:48:34 -06:00
Stone Tickle
8010460c81
finish support for wrap_mode 2022-03-05 17:14:05 -06:00
Stone Tickle
05f4947f74
add support for pkg_config_path option 2022-03-04 08:35:05 -06:00
Stone Tickle
570150236b
add support for wrap_mode option 2022-03-04 08:34:15 -06:00
Stone Tickle
e7b4e1ba30
implement range() function 2022-03-02 10:21:41 -06:00
Stone Tickle
143b05f42c
relativize all commandline files in custom_target 2022-03-02 09:41:37 -06:00
Stone Tickle
fd4118f9be
support custom_target env keyword 2022-03-02 09:40:56 -06:00
Stone Tickle
167f2c2798
implement compiler.run() 2022-03-01 19:37:45 -06:00
Stone Tickle
28e9fd0b15
allow generated_list to be used in custom_target 2022-03-01 15:33:14 -06:00