FUNCTION(RagelMaker ragelFile)
    MESSAGE("${ragelFile} -> ${ragelFile}.cpp")
    EXECUTE_PROCESS(COMMAND ragel -G2 -C ${ragelFile} -o ${ragelFile}.cpp)
ENDFUNCTION(RagelMaker)

FUNCTION(AddTest testName sourceFile)
    add_executable(${testName} ${sourceFile})
    target_link_libraries(${testName} ZFramework)
ENDFUNCTION(AddTest)