2024-09-05 17:32:45 +03:00
|
|
|
(rule
|
|
|
|
|
(target byterun.exe)
|
|
|
|
|
(deps
|
2024-11-03 12:52:25 +03:00
|
|
|
(:include (source_tree include))
|
2024-12-13 13:32:50 +03:00
|
|
|
(:main src/cli.cpp)
|
|
|
|
|
(:parser src/parser.cpp)
|
|
|
|
|
(:analyzer src/analyzer.cpp)
|
|
|
|
|
(:obj types.o parser.o interpreter.o)
|
2024-09-05 17:32:45 +03:00
|
|
|
(:runtime ../runtime/runtime.a))
|
|
|
|
|
(mode
|
|
|
|
|
(promote (until-clean)))
|
|
|
|
|
(action
|
2024-12-13 13:32:50 +03:00
|
|
|
(run g++ -std=c++20 -Iinclude/ %{main} %{parser} %{analyzer} %{runtime} %{obj} -o %{target})))
|
|
|
|
|
|
|
|
|
|
(rule
|
|
|
|
|
(target types.o)
|
|
|
|
|
(deps
|
|
|
|
|
(:include (source_tree include))
|
|
|
|
|
(:src src/types.c)
|
|
|
|
|
(:runtime ../runtime/runtime.a))
|
|
|
|
|
(mode
|
|
|
|
|
(promote (until-clean)))
|
|
|
|
|
(action
|
|
|
|
|
(run gcc -Iinclude/ -c %{src} -o %{target})))
|
|
|
|
|
|
|
|
|
|
(rule
|
|
|
|
|
(target parser.o)
|
|
|
|
|
(deps
|
|
|
|
|
(:include (source_tree include))
|
|
|
|
|
(:src src/parser.c)
|
|
|
|
|
(:runtime ../runtime/runtime.a))
|
|
|
|
|
(mode
|
|
|
|
|
(promote (until-clean)))
|
|
|
|
|
(action
|
|
|
|
|
(run gcc -Iinclude/ -c %{src} -o %{target})))
|
|
|
|
|
|
|
|
|
|
(rule
|
|
|
|
|
(target interpreter.o)
|
|
|
|
|
(deps
|
|
|
|
|
(:include (source_tree include))
|
|
|
|
|
(:src src/interpreter.c)
|
|
|
|
|
(:runtime ../runtime/runtime.a))
|
|
|
|
|
(mode
|
|
|
|
|
(promote (until-clean)))
|
|
|
|
|
(action
|
|
|
|
|
(run gcc -Iinclude/ -c %{src} -o %{target})))
|