From 82d2afe864c14bbbcf518dfdc3c1d98281f8a835 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michal=20Vlas=C3=A1k?= <vlasami6@fit.cvut.cz>
Date: Thu, 13 Apr 2023 18:01:52 +0200
Subject: [PATCH] Move files into subdirectories and improve meson

---
 .gitlab-ci.yml                 |  2 +-
 meson.build                    | 24 +++++++++++++++++-------
 arena.c => reference/arena.c   |  0
 arena.h => reference/arena.h   |  0
 parser.c => reference/parser.c |  0
 parser.h => reference/parser.h |  0
 example_main.c => src/main.c   |  0
 7 files changed, 18 insertions(+), 8 deletions(-)
 rename arena.c => reference/arena.c (100%)
 rename arena.h => reference/arena.h (100%)
 rename parser.c => reference/parser.c (100%)
 rename parser.h => reference/parser.h (100%)
 rename example_main.c => src/main.c (100%)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 8b49ed5..b422a57 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -4,7 +4,7 @@ test:
   script:
     - meson setup build -D b_sanitize=address,undefined
     - meson compile -C build
-    - cppcheck --error-exitcode=1 *.c
+    - cppcheck --error-exitcode=1 src/*.c
     - export ASAN_OPTIONS=symbolize=1:debug=1:detect_leaks=1:strict_string_checks=1:detect_stack_use_after_return=1:check_initialization_order=1:strict_init_order=1
     - export FML="$(readlink -f ./build/fml)"
     - export FML_REF=/cfml/fml
diff --git a/meson.build b/meson.build
index 5040a1f..77d2d7c 100644
--- a/meson.build
+++ b/meson.build
@@ -1,9 +1,19 @@
-project('fml', 'c',
-  version : '0.1',
-  default_options : ['c_std=c11', 'warning_level=3'])
+project(
+  'fml',
+  'c',
+  version: '0.1',
+  default_options: ['c_std=c11', 'warning_level=2'],
+)
 
 exe = executable('fml',
-  'example_main.c',
-  'arena.c',
-  'parser.c',
-  install : true)
+  sources: files(
+    'reference/arena.c',
+    'reference/parser.c',
+    'src/main.c',
+  ),
+  include_directories: include_directories(
+    'src',
+    'reference'
+  ),
+  install: true,
+)
diff --git a/arena.c b/reference/arena.c
similarity index 100%
rename from arena.c
rename to reference/arena.c
diff --git a/arena.h b/reference/arena.h
similarity index 100%
rename from arena.h
rename to reference/arena.h
diff --git a/parser.c b/reference/parser.c
similarity index 100%
rename from parser.c
rename to reference/parser.c
diff --git a/parser.h b/reference/parser.h
similarity index 100%
rename from parser.h
rename to reference/parser.h
diff --git a/example_main.c b/src/main.c
similarity index 100%
rename from example_main.c
rename to src/main.c
-- 
GitLab