From 425decdf7e9284d15aa726e3ae96b9942fb0e3ea Mon Sep 17 00:00:00 2001 From: IronClawTrem Date: Sun, 16 Feb 2020 03:40:06 +0000 Subject: create tremded branch --- src/tools/CMakeLists.txt | 145 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 145 insertions(+) create mode 100644 src/tools/CMakeLists.txt (limited to 'src/tools/CMakeLists.txt') diff --git a/src/tools/CMakeLists.txt b/src/tools/CMakeLists.txt new file mode 100644 index 0000000..c54f9ce --- /dev/null +++ b/src/tools/CMakeLists.txt @@ -0,0 +1,145 @@ +# _______ ___ ___ _______ __ __ +# | | | | | | .----.-----.--------.-----.|__| |.-----.----. +# | - _| | | | | __| _ | | _ || | || -__| _| +# |_______|\_____/|__|_|__| |____|_____|__|__|__| __||__|__||_____|__| +# |__| +# TODO: DO NOT build unless building a QVM + + +# _ _ +# | || | +# | || | ,_ __, +# |/ |/ \_| | / | / | +# |__/\_/ \_/|_/ |_/\_/|/ +# /| +# \| + +add_executable( + lburg + lcc/lburg/lburg.c + lcc/lburg/gram.c + ) + + +# ___ +# / \ +# __, __/ __, , _ _ _ +# / | \/ | / \_/ |/ |/ | +# \_/|_/\___/\_/|_/ \/ | | |_/ +# |\ +# |/ +# + +add_executable( + q3asm + asm/q3asm.c + asm/cmdlib.c + ) + +target_include_directories( q3asm PUBLIC lcc/src lcc/lburg ) + + +# ___ _ +# / \| | +# __, __/| | __ __ +# / | \|/ / / +# \_/|_/\___/|__/\___/\___/ +# |\ +# |/ +# + +add_executable( + q3lcc + lcc/etc/bytecode.c + lcc/etc/lcc.c + ) + +target_include_directories( q3lcc PUBLIC lcc/src lcc/lburg ) + +# ___ +# / \ +# __, __/ __ _ _ +#/ | \/ |/ \_|/ \_ +#\_/|_/\___/\___/|__/ |__/ +# |\ /| /| +# |/ \| \| +# + +add_executable( + q3cpp + # + lcc/cpp/cpp.c + lcc/cpp/lex.c + lcc/cpp/nlist.c + lcc/cpp/tokens.c + lcc/cpp/macro.c + lcc/cpp/eval.c + lcc/cpp/include.c + lcc/cpp/hideset.c + lcc/cpp/getopt.c + lcc/cpp/unix.c + ) + +target_include_directories( q3cpp PUBLIC lcc/src lcc/lburg ) + +# ___ +# / \ +# __, __/ ,_ __ __ +# / | \/ | / / +# \_/|_/\___/ |_/\___/\___/ +# |\ +# |/ +# + +add_custom_command( + OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/dagcheck.c + COMMAND lburg + ARGS ${CMAKE_CURRENT_SOURCE_DIR}/lcc/src/dagcheck.md dagcheck.c + DEPENDS lburg lcc/src/dagcheck.md + ) +set_source_files_properties(dagcheck.c PROPERTIES GENERATED TRUE) + +add_executable( + q3rcc + lcc/src/alloc.c + lcc/src/bind.c + lcc/src/bytecode.c + lcc/src/dag.c + ${CMAKE_CURRENT_BINARY_DIR}/dagcheck.c + lcc/src/decl.c + lcc/src/enode.c + lcc/src/error.c + lcc/src/event.c + lcc/src/expr.c + lcc/src/gen.c + lcc/src/init.c + lcc/src/inits.c + lcc/src/input.c + lcc/src/lex.c + lcc/src/list.c + lcc/src/main.c + lcc/src/null.c + lcc/src/output.c + lcc/src/prof.c + lcc/src/profio.c + lcc/src/simp.c + lcc/src/stmt.c + lcc/src/string.c + lcc/src/sym.c + lcc/src/symbolic.c + lcc/src/trace.c + lcc/src/tree.c + lcc/src/types.c + ) + +target_include_directories( q3rcc PUBLIC lcc/src lcc/lburg ) + +set_property( + TARGET lburg q3asm q3lcc q3cpp q3rcc + PROPERTY RUNTIME_OUTPUT_DIRECTORY + ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/qvm_tools + ) + +# Victor Roemer (wtfbbqhax), . +cmake_minimum_required(VERSION 3.5) +project(QVMCompiler C) -- cgit