A legally distinct but phonetically similar name to a sci-fi space warrior.
cmake -B build
make
cmake -G Ninja -B build
ninja -C./build
- Using Ninja
cmake -GNinja -Bbuild
ninja -C./build
- Using MSBUILD
cmake -B build
msbuild build\WarfLang.sln -t:Build -p:Configuration=Release
ln -s "$(brew --prefix llvm)/share/clang/run-clang-tidy.py" "/usr/local/bin/run-clang-tidy.py"
ln -s "$(brew --prefix llvm)/bin/clang-apply-replacements" "/usr/local/bin/clang-apply-replacements"
ln -s "$(brew --prefix llvm)/share/clang/run-clang-tidy.py" "/usr/local/bin/run-clang-tidy.py"
cmake -G Ninja -B build -DCMAKE_C_COMPILER=$(brew --prefix llvm)/bin/clang \
-DCMAKE_CXX_COMPILER=$(brew --prefix llvm)/bin/clang++
cmake -G Ninja -B build -DCMAKE_BUILD_TYPE=Debug \
-DCMAKE_CXX_FLAGS="-fprofile-instr-generate -fcoverage-mapping" \
-DCMAKE_C_COMPILER=$(brew --prefix llvm)/bin/clang \
-DCMAKE_CXX_COMPILER=$(brew --prefix llvm)/bin/clang++
ninja -C./build
LLVM_PROFILE_FILE="Warflang.profraw" ./build/test/WarfLang_TEST
$(brew --prefix llvm)/bin/llvm-profdata merge -sparse WarfLang.profraw -o WarfLang.profdata
$(brew --prefix llvm)/bin/llvm-cov show -output-dir=out/report -format=html -instr-profile=Warf.profdata -object=build/test/WarfLang_TEST build/src/cli/Warf src/
After running cmake, the build dir will have a compile_commands.json
file. Thats all you need to run run-clang-tidy.py
.
run-clang-tidy.py -p build/ -header-filter='.*' -fix -format
- Build:
docker build -t warflang:latest .
- Run:
docker run --name test_vm -it warflang:latest
- Print out container id:
inspect test_vm -f '{{.Id}}'
- Get valgrind log:
docker cp <container id>:root/valgrind.log .
- Build:
docker build -f Dockerfile.aarch64 -t warflang_arch64:latest .
- Run:
docker run --name arm_test_vm -it warflang_arch64:latest
- Build:
docker build -f Dockerfile.mingw-cross -t warflang_mingw:latest .
- Run:
docker run --name mingw_test_vm -it warflang_mingw:latest
- Build:
docker build -f Dockerfile.llvm-win-cross -t warflang_llvm_win_cross:latest .
- Run:
docker run --name llvm_win_test_vm -it warflang_llvm_win_cross:latest
- Build:
docker build -f Dockerfile.osx-cross -t warflang_osx:latest .
- Run:
docker run --name osx_test_vm -it warflang_osx:latest
- Build:
docker build -f Dockerfile.freebsd-cross -t warflang_freebsd:latest .
- Run:
docker run --name freebsd_test_vm -it warflang_freebsd:latest
- Build:
docker build -f Dockerfile.emscripten -t warflang_web:latest .
- Run:
docker run --name emsdk_test_vm -it warflang_web:latest