package Ġphp . extension . generator Ċ Ċ import Ġphp . extension . dsl .* Ċ import Ġphp . extension . share .* Ċ Ċ class ĠM 4 Generator Ġ: ĠFile Generator Ġ{ ĊĠĠĠ Ġoverride Ġval ĠfileName Ġ= Ġ" config . m 4 " ĊĊĠĠĠ Ġoverride Ġfun Ġgenerate ( ext : ĠExtension ): ĠString Ġ= Ġm 4 File Template . fill ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" name " Ġto Ġext . name , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" upper Case Name " Ġto Ġext . name . toUpperCase () ĊĠĠĠ Ġ) Ċ } Ċ Ċ const Ġval Ġm 4 File Template Ġ= Ġ""" Ċ PHP _ ARG _ ENABLE ({ name }, Ġwhether Ġto Ġenable Ġ{ name } Ġsupport ,[ Ġ-- enable -{ name } ĠĠ ĠEnable Ġ{ name } Ġsupport ]) Ċ Ċ if Ġtest Ġ"${ '$ '} PHP _{ upper Case Name }" Ġ!= Ġ" no "; Ġthen ĊĠĠĠ ĠPHP _ ADD _ INCLUDE ( .) ĊĠĠĠ ĠPHP _ ADD _ LIBRARY _ WITH _ PATH ({ name }, Ġ. , Ġ{ upper Case Name }_ SHARED _ LIB ADD ) ĊĠĠĠ ĠPHP _ SUB ST ({ upper Case Name }_ SHARED _ LIB ADD ) ĊĠĠĠ ĠPHP _ NEW _ EXTENSION ({ name }, Ġextension . c , Ġ${ '$ '} ext _ shared ) Ċ fi Ċ """