#
#   module  : CMakeLists.txt
#   version : 1.15
#   date    : 08/29/24
#
set(JOY_EXECUTABLE $<TARGET_FILE:joy>)

macro(exe9 src)
add_custom_target(${src}.out ALL
		  WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/test2
		  DEPENDS joy ${CMAKE_SOURCE_DIR}/test2/${src}.joy
		  COMMAND ${JOY_EXECUTABLE} ${CMAKE_SOURCE_DIR}/test2/${src}.joy >${src}.out)
endmacro(exe9)

exe9(__dump)
exe9(__html_manual)
exe9(__latex_manual)
exe9(__manual_list)
exe9(__memoryindex)
exe9(__memorymax)
exe9(__settracegc)
exe9(__symtabindex)
exe9(__symtabmax)
exe9(_help)
exe9(abort)
exe9(abs)
exe9(acos)
exe9(all2)
exe9(and)
exe9(app1)
exe9(app11)
exe9(app12)
exe9(app2)
exe9(app3)
exe9(app4)
exe9(argc)
exe9(argv)
exe9(asin)
exe9(assign)
exe9(at)
exe9(atan)
exe9(atan2)
exe9(autoput)
exe9(binary)
exe9(binrec)
exe9(body)
exe9(branch)
exe9(case)
exe9(casting)
exe9(ceil)
exe9(char)
exe9(choice)
exe9(chr)
exe9(cleave)
exe9(clock)
exe9(compare)
exe9(concat)
exe9(cond)
exe9(condlinrec)
exe9(condnestrec)
exe9(cons)
exe9(construct)
exe9(conts)
exe9(cos)
exe9(cosh)
exe9(dip)
exe9(div)
exe9(divide)
exe9(drop)
exe9(dup)
exe9(dupd)
exe9(echo)
exe9(enconcat)
exe9(eql)
exe9(eql2)
exe9(equal)
exe9(exp)
exe9(false)
exe9(fclose)
exe9(feof)
exe9(ferror)
exe9(fflush)
exe9(fgetch)
exe9(fgets)
exe9(file)
exe9(filetime)
exe9(filter)
exe9(finclude)
exe9(first)
exe9(float)
exe9(floor)
exe9(fold)
exe9(fopen)
exe9(format)
exe9(formatf)
exe9(fput)
exe9(fputch)
exe9(fputchars)
exe9(fputstring)
exe9(fread)
exe9(fremove)
exe9(frename)
exe9(frexp)
exe9(fseek)
exe9(ftell)
exe9(fwrite)
exe9(gc)
exe9(genrec)
exe9(geql)
exe9(get)
exe9(getenv)
exe9(gmtime)
exe9(greater)
exe9(has)
exe9(help)
exe9(helpdetail)
exe9(i)
exe9(id)
exe9(ifchar)
exe9(iffile)
exe9(iffloat)
exe9(ifinteger)
exe9(iflist)
exe9(iflogical)
exe9(ifset)
exe9(ifstring)
exe9(ifte)
exe9(in)
exe9(include)
exe9(infra)
exe9(integer)
exe9(intern)
exe9(ldexp)
exe9(leaf)
exe9(leql)
exe9(less)
exe9(linrec)
exe9(list)
exe9(localtime)
exe9(log)
exe9(log10)
exe9(logical)
exe9(manual)
exe9(map)
exe9(max)
exe9(maxint)
exe9(min)
exe9(minus)
exe9(mktime)
exe9(modf)
exe9(mul)
exe9(name)
exe9(neg)
exe9(neql)
exe9(not)
exe9(null)
exe9(nullary)
exe9(of)
exe9(opcase)
exe9(or)
exe9(ord)
exe9(over)
exe9(pick)
exe9(plus)
exe9(pop)
exe9(popd)
exe9(pow)
exe9(pred)
exe9(primrec)
exe9(put)
exe9(putch)
exe9(putchars)
exe9(quit)
exe9(rand)
exe9(rem)
exe9(rest)
exe9(rolldown)
exe9(rolldownd)
exe9(rollup)
exe9(rollupd)
exe9(rotate)
exe9(rotated)
exe9(round)
exe9(sametype)
exe9(set)
exe9(setautoput)
exe9(setecho)
exe9(setsize)
exe9(setundeferror)
exe9(sign)
exe9(sin)
exe9(sinh)
exe9(size)
exe9(small)
exe9(some)
exe9(split)
exe9(sqrt)
exe9(srand)
exe9(stack)
exe9(stderr)
exe9(stdin)
exe9(stdout)
exe9(step)
exe9(strftime)
exe9(string)
exe9(strtod)
exe9(strtol)
exe9(succ)
exe9(swap)
exe9(swapd)
exe9(swons)
exe9(system)
exe9(tailrec)
exe9(take)
exe9(tan)
exe9(tanh)
exe9(ternary)
exe9(time)
exe9(times)
exe9(treegenrec)
exe9(treerec)
exe9(treestep)
exe9(true)
exe9(trunc)
exe9(typeof)
exe9(unary)
exe9(unary2)
exe9(unary3)
exe9(unary4)
exe9(unassign)
exe9(uncons)
exe9(undeferror)
exe9(undefs)
exe9(unstack)
exe9(unswons)
exe9(user)
exe9(while)
exe9(x)
exe9(xor)
