From a1bb97a597648154464bafe2ed465ffa4280f812 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rafa=C5=82=20Grodzi=C5=84ski?= Date: Sat, 21 Jun 2025 00:03:35 +0900 Subject: [PATCH] Added cmake --- .gitignore | 3 ++- .vscode/launch.json | 1 - .vscode/tasks.json | 11 ++++++++++- CMakeLists.txt | 15 +++++++++++++++ 4 files changed, 27 insertions(+), 3 deletions(-) create mode 100644 CMakeLists.txt diff --git a/.gitignore b/.gitignore index 06204aa..57b7346 100644 --- a/.gitignore +++ b/.gitignore @@ -3,4 +3,5 @@ brb .vscode/settings.json *.dSYM -*.brc \ No newline at end of file +*.brc +build/ \ No newline at end of file diff --git a/.vscode/launch.json b/.vscode/launch.json index 51cd702..26cc8b6 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -9,6 +9,5 @@ "args": ["-v", "${workspaceFolder}/test.brc"], "internalConsoleOptions": "openOnSessionStart" } - ] } \ No newline at end of file diff --git a/.vscode/tasks.json b/.vscode/tasks.json index f7a0f06..eecf358 100644 --- a/.vscode/tasks.json +++ b/.vscode/tasks.json @@ -4,11 +4,20 @@ { "label": "Build Bits Runner Builder", "type": "shell", - "command": "./make.sh", + "command": "cmake --build build", "group": { "kind": "build", "isDefault": true } + }, + { + "label": "Clean built product", + "type": "shell", + "command": "cmake --build build --target clean", + "group": { + "kind": "none", + "isDefault": false + } } ] } \ No newline at end of file diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..77c5a88 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,15 @@ +cmake_minimum_required(VERSION 4.0) +project(bits-runner-builder LANGUAGES CXX) + +set(CMAKE_CXX_STANDARD 17) + +find_package(LLVM REQUIRED CONFIG) +include_directories(${LLVM_INCLUDE_DIRS}) +link_directories(${LLVM_LIBRARY_DIRS}) + +file(GLOB_RECURSE SOURCES + src/*.cpp + src/**/*.cpp) +add_executable(brb ${SOURCES}) + +target_link_libraries(brb llvm)