aboutsummaryrefslogtreecommitdiff
path: root/src_doit/c.py
diff options
context:
space:
mode:
Diffstat (limited to 'src_doit/c.py')
-rw-r--r--src_doit/c.py40
1 files changed, 40 insertions, 0 deletions
diff --git a/src_doit/c.py b/src_doit/c.py
new file mode 100644
index 0000000..618dd8d
--- /dev/null
+++ b/src_doit/c.py
@@ -0,0 +1,40 @@
+from pathlib import Path
+
+from hat.doit.c import (exe_suffix,
+ CBuild)
+
+
+__all__ = ['task_c',
+ 'task_c_obj',
+ 'task_c_dep']
+
+
+build_dir = Path('build')
+src_c_dir = Path('src_c')
+deps_dir = Path('deps')
+
+build_c_dir = build_dir / 'c'
+exe_path = build_c_dir / f'opcut-calculate{exe_suffix}'
+
+
+def task_c():
+ """Build native app"""
+ return _build.get_task_exe(exe_path)
+
+
+def task_c_obj():
+ """Build .o files"""
+ yield from _build.get_task_objs()
+
+
+def task_c_dep():
+ """Build .d files"""
+ yield from _build.get_task_deps()
+
+
+_build = CBuild(
+ src_paths=[*src_c_dir.rglob('*.c')],
+ src_dir=src_c_dir,
+ build_dir=build_c_dir,
+ cc_flags=['-fPIC', '-O2', f'-I{deps_dir / "jsmn"}'],
+ task_dep=['deps'])