build(root): added initial meson build system implimentation and mk script

we will use meson as the build system for this project. Added a rough outline of this which builds source, libraries, and links them to tests (along with the google test library for testing). meson will be setup and compiled with ./mk.
This commit is contained in:
2025-01-19 07:38:58 -05:00
parent b7b849da45
commit 7d6062b6c1
5 changed files with 63 additions and 0 deletions

22
tests/dobj/meson.build Normal file
View File

@@ -0,0 +1,22 @@
# Test files for dobj
test_sources = [
'MetadataTest.cpp'
]
foreach test_file : test_sources
exe_name = test_file.split('.')[0]
message('Building test: ' + exe_name)
# Create an executable target for each test
test_exe = executable(
exe_name,
test_file,
dependencies: gtest_dep,
include_directories: include_directories('../../src/dobj/public'),
link_with: libdobj, # Link the dobj library
install_rpath: '@loader_path/../../src' # Ensure runtime library path resolves correctly
)
# Add the executable as a test
test(exe_name, test_exe)
endforeach

5
tests/meson.build Normal file
View File

@@ -0,0 +1,5 @@
# Google Test dependency
gtest_dep = dependency('gtest', main: true, required : true)
# Subdirectory for dobj tests
subdir('dobj')