Initial commit

This commit is contained in:
2026-03-29 10:40:09 -06:00
commit b75d1f831c
7 changed files with 114 additions and 0 deletions

54
.gitignore vendored Normal file
View File

@@ -0,0 +1,54 @@
# Directories
build/
build-*/
cmake-build-*/
.cache/
out/
out/Debug/
out/Release/
# Cmake files
CMakeCache.txt
CMakeFiles/
cmake_install.cmake
CTestTestfile.cmake
Testing/
compile_commands.json
../compile_commands.json
build/compile_commands.json
# Make / Ninja
Makefile
*.ninja
*.ninja_deps
*.ninja_log
rules.ninja
# Object files
*.o
*.obj
*.lo
*.la
# Binaries
*.out
*.exe
*.dll
*.so
*.so.*
*.dylib
*.a
# Debug / Sanitizer
*.dSYM/
*.gcno
*.gcda
*.gcov
# Editors
.vscode/
.idea/
*.swp
*.swo
*~

33
CMakeLists.txt Normal file
View File

@@ -0,0 +1,33 @@
cmake_minimum_required(VERSION 3.20)
project(calculator VERSION 1.0 LANGUAGES C)
set(CMAKE_C_STANDARD 11)
set(CMAKE_C_STANDARD_REQUIRED ON)
# Export compile_commands.json (para clangd)
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
add_compile_options(
-Wall
-Wextra
-Wpedantic
)
include_directories(include)
add_library(arena_lib
src/arena.c
)
add_executable(arena_main src/main.c)
target_link_libraries(arena_main arena_lib)
# ------------------------
# Testing
# ------------------------
enable_testing()
add_subdirectory(test)

4
include/arena.h Normal file
View File

@@ -0,0 +1,4 @@
#ifndef ARENA_H
#define ARENA_H
#endif // !ARENA_H

1
src/arena.c Normal file
View File

@@ -0,0 +1 @@
#include "arena.h"

6
src/main.c Normal file
View File

@@ -0,0 +1,6 @@
#include "arena.h"
#include <stdlib.h>
int main(void) {
return EXIT_SUCCESS;
}

10
test/CMakeLists.txt Normal file
View File

@@ -0,0 +1,10 @@
find_package(cmocka REQUIRED)
add_executable(test_arena test_arena.c)
target_link_libraries(test_arena
arena_lib
cmocka::cmocka
)
add_test(NAME arena_tests COMMAND test_arena)

6
test/test_arena.c Normal file
View File

@@ -0,0 +1,6 @@
#include "arena.h"
#include <stdlib.h>
int main(void) {
return EXIT_SUCCESS;
}