package Ġpw . bin om . kotlin . clang Ċ Ċ import Ġorg . gradle . api . Project Ċ import Ġorg . gradle . api . tasks . Task Provider Ċ Ċ fun ĠProject . clang Build W asm 3 2 ( ĊĠĠĠ Ġname : ĠString Ġ= Ġ" native ", ĊĠĠĠ Ġtask Name : ĠString Ġ= Ġ" build Binary ${ name . capitalize ()} W asm 3 2 ", ĊĠĠĠ Ġconfig : ĠBuild W asm 3 2 . () Ġ-> ĠUnit Ċ ): ĠTask Provider < Build W asm 3 2 > Ġ{ ĊĠĠĠ Ġval Ġtask Ġ= Ġtasks . register ( task Name , ĠBuild W asm 3 2 :: class . java ) ĊĠĠĠ Ġtask . configure Ġ{ Ġtask Ġ-> ĊĠĠĠĠĠĠĠ Ġtask . group Ġ= Ġ" build " ĊĠĠĠĠĠĠĠ Ġtask . l to Optimization Level . set ( 2 ) ĊĠĠĠĠĠĠĠ Ġtask . export All . set ( false ) Ċ // ĠĠĠĠĠĠĠ Ġtask . objects . from ( K ON AN _ DEPS . resolve ( W ASM 3 2 _ SYS ROOT _ NAME ). resolve (" lib / libc . symbols ")) ĊĠĠĠĠĠĠĠ Ġtask . output . set ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuild Dir . resolve (" native ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. resolve ( name ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. resolve (" wasm 3 2 ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. resolve (" binary ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. resolve ("$ name . wasm ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġconfig ( task ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġreturn Ġtask Ċ } Ċ