From 25b9546647c063848607873ae6a1ebe2b8d343ab Mon Sep 17 00:00:00 2001 From: Jihoon Lee Date: Fri, 29 Jan 2021 18:28:00 +0900 Subject: [PATCH] [Conf] Add default conf nntrainer.ini This patch adds nntrainer.ini (defaulted to be `/etc/nntrainer.ini`) The path is defaulted to be '/etc/nntrainer.ini' but it is subjected to change by changing `--sysconfdir=''` and `--prefix` **Self evaluation:** 1. Build test: [X]Passed [ ]Failed [ ]Skipped 2. Run test: [X]Passed [ ]Failed [ ]Skipped Signed-off-by: Jihoon Lee --- debian/nntrainer.install | 1 + meson.build | 18 +++++++++++++++++- nntrainer.ini.in | 8 ++++++++ packaging/nntrainer.spec | 1 + 4 files changed, 27 insertions(+), 1 deletion(-) create mode 100644 nntrainer.ini.in diff --git a/debian/nntrainer.install b/debian/nntrainer.install index fdffd49..e3cd584 100644 --- a/debian/nntrainer.install +++ b/debian/nntrainer.install @@ -1 +1,2 @@ /usr/lib/*/*.so +/etc/nntrainer.ini diff --git a/meson.build b/meson.build index a63ce4e..00d55b8 100644 --- a/meson.build +++ b/meson.build @@ -72,7 +72,7 @@ nntrainer_prefix = get_option('prefix') nntrainer_libdir = nntrainer_prefix / get_option('libdir') nntrainer_bindir = nntrainer_prefix / get_option('bindir') nntrainer_includedir = nntrainer_prefix / get_option('includedir') -nntrainer_inidir = get_option('sysconfdir') +nntrainer_confdir = get_option('sysconfdir') application_install_dir = nntrainer_bindir / 'applications' # handle resources @@ -92,6 +92,7 @@ nntrainer_conf.set('VERSION', meson.project_version()) nntrainer_conf.set('PREFIX', nntrainer_prefix) nntrainer_conf.set('EXEC_PREFIX', nntrainer_bindir) nntrainer_conf.set('LIB_INSTALL_DIR', nntrainer_libdir) +nntrainer_conf.set('PLUGIN_INSTALL_PREFIX', nntrainer_libdir / 'nntrainer') nntrainer_conf.set('INCLUDE_INSTALL_DIR', nntrainer_includedir) dummy_dep = dependency('', required: false) @@ -187,6 +188,21 @@ configure_file(input: 'nntrainer.pc.in', output: 'nntrainer.pc', configuration: nntrainer_conf ) +# Install conf +configure_file( + input: 'nntrainer.ini.in', + output: 'nntrainer.ini', + install_dir: nntrainer_confdir, + configuration: nntrainer_conf +) +nntrainer_conf_abs_path = get_option('prefix') / nntrainer_confdir / 'nntrainer.ini' +message('NNTRAINER_CONF_PATH=@0@'.format(nntrainer_conf_abs_path)) + +add_project_arguments( + '-DNNTRAINER_CONF_PATH="@0@"'.format(nntrainer_conf_abs_path), + language: ['c', 'cpp'] +) + # Build nntrainer subdir('nntrainer') diff --git a/nntrainer.ini.in b/nntrainer.ini.in new file mode 100644 index 0000000..7a86072 --- /dev/null +++ b/nntrainer.ini.in @@ -0,0 +1,8 @@ +####################### +# nntrainer conf file # +####################### + +# default plugin paths, below path is searched and registered when the library is being loaded. +[plugins] +# path to search for layers +layer=@PLUGIN_INSTALL_PREFIX@/layers diff --git a/packaging/nntrainer.spec b/packaging/nntrainer.spec index 0f23986..494833e 100644 --- a/packaging/nntrainer.spec +++ b/packaging/nntrainer.spec @@ -383,6 +383,7 @@ cp -r result %{buildroot}%{_datadir}/nntrainer/unittest/ %defattr(-,root,root,-) %license LICENSE %{_libdir}/libnntrainer.so +%{_sysconfdir}/nntrainer.ini %files devel %{_includedir}/nntrainer/databuffer.h -- 2.7.4