build, packaging, src, tests: restructure source tree to provide libmmimgr library... 09/264109/1
authorSung-Jin Park <sj76.park@samsung.com>
Mon, 13 Sep 2021 08:35:08 +0000 (17:35 +0900)
committerSung-Jin Park <sj76.park@samsung.com>
Mon, 13 Sep 2021 11:27:22 +0000 (20:27 +0900)
Change-Id: I059ab1d426b97cb6d63a642bf027ad0f9fbee9a8
Signed-off-by: Sung-Jin Park <sj76.park@samsung.com>
44 files changed:
meson.build
packaging/mmi-manager.spec
src/bin/main.c [moved from src/main.c with 100% similarity]
src/bin/meson.build [new file with mode: 0644]
src/mmimgr/interface/mmifw_stub.c [moved from src/interface/mmifw_stub.c with 100% similarity]
src/mmimgr/interface/mmifw_stub.h [moved from src/interface/mmifw_stub.h with 100% similarity]
src/mmimgr/iu/data/default_rule.json [moved from src/iu/data/default_rule.json with 100% similarity]
src/mmimgr/iu/input_intent.cpp [moved from src/iu/input_intent.cpp with 100% similarity]
src/mmimgr/iu/input_intent.h [moved from src/iu/input_intent.h with 100% similarity]
src/mmimgr/iu/intent_understanding_engine.cpp [moved from src/iu/intent_understanding_engine.cpp with 100% similarity]
src/mmimgr/iu/intent_understanding_engine.h [moved from src/iu/intent_understanding_engine.h with 100% similarity]
src/mmimgr/iu/iu_rule.cpp [moved from src/iu/iu_rule.cpp with 100% similarity]
src/mmimgr/iu/iu_rule.h [moved from src/iu/iu_rule.h with 100% similarity]
src/mmimgr/iu/mmi_iu.cpp [moved from src/iu/mmi_iu.cpp with 100% similarity]
src/mmimgr/iu/mmi_iu.h [moved from src/iu/mmi_iu.h with 100% similarity]
src/mmimgr/iu/mmi_iu_error.h [moved from src/iu/mmi_iu_error.h with 100% similarity]
src/mmimgr/iu/mmi_iu_event.h [moved from src/iu/mmi_iu_event.h with 100% similarity]
src/mmimgr/iu/mmi_iu_log.h [moved from src/iu/mmi_iu_log.h with 100% similarity]
src/mmimgr/iu/output_intent.cpp [moved from src/iu/output_intent.cpp with 100% similarity]
src/mmimgr/iu/output_intent.h [moved from src/iu/output_intent.h with 100% similarity]
src/mmimgr/meson.build [moved from src/meson.build with 60% similarity]
src/mmimgr/mmi-api-handler.c [moved from src/mmi-api-handler.c with 100% similarity]
src/mmimgr/mmi-api-handler.h [moved from src/mmi-api-handler.h with 100% similarity]
src/mmimgr/mmi-client.c [moved from src/mmi-client.c with 100% similarity]
src/mmimgr/mmi-client.h [moved from src/mmi-client.h with 100% similarity]
src/mmimgr/mmi-common.c [moved from src/mmi-common.c with 100% similarity]
src/mmimgr/mmi-common.h [moved from src/mmi-common.h with 100% similarity]
src/mmimgr/mmi-core.c [moved from src/mmi-core.c with 100% similarity]
src/mmimgr/mmi-core.h [moved from src/mmi-core.h with 100% similarity]
src/mmimgr/mmi-fusion-iface.h [moved from src/mmi-fusion-iface.h with 100% similarity]
src/mmimgr/mmi-fusion.c [moved from src/mmi-fusion.c with 100% similarity]
src/mmimgr/mmi-fusion.h [moved from src/mmi-fusion.h with 100% similarity]
src/mmimgr/mmi-iu-bridge.c [moved from src/mmi-iu-bridge.c with 100% similarity]
src/mmimgr/mmi-iu-bridge.h [moved from src/mmi-iu-bridge.h with 100% similarity]
src/mmimgr/mmi-manager-dbg.h [moved from src/mmi-manager-dbg.h with 100% similarity]
src/mmimgr/mmi-manager.c [moved from src/mmi-manager.c with 100% similarity]
src/mmimgr/mmi-manager.h [moved from src/mmi-manager.h with 100% similarity]
src/mmimgr/mmi-provider-iface.h [moved from src/mmi-provider-iface.h with 100% similarity]
src/mmimgr/mmi-provider.c [moved from src/mmi-provider.c with 100% similarity]
src/mmimgr/mmi-provider.h [moved from src/mmi-provider.h with 100% similarity]
src/modules/modality_keyboard/meson.build
src/modules/ref_fusion/meson.build
tests/iu/meson.build
tests/meson.build

index 3ddad21..d008209 100644 (file)
@@ -13,6 +13,9 @@ mmi_manager_prefix_libdir = join_paths(mmi_manager_prefix, get_option('libdir'))
 
 pkgconfig = import('pkgconfig')
 
-subdir('src')
+subdir('src/mmimgr')
+subdir('src/bin')
+subdir('src/modules/ref_fusion')
+subdir('src/modules/modality_keyboard')
 subdir('tests')
 subdir('tests/iu')
index 5d9ce6e..5cdef05 100644 (file)
@@ -46,7 +46,7 @@ cp %{SOURCE1004} .
 
 #generate mmi-stub using TIDL Compiler
 tidlc -s -l C -i tidl/mmifw.tidl -o mmifw_stub
-cp -af mmifw_stub.* ./src/interface/
+cp -af mmifw_stub.* ./src/mmimgr/interface/
 
 %build
 meson setup --prefix=/usr \
@@ -68,9 +68,10 @@ mkdir -p %{buildroot}%{_libdir}/provider
 %defattr(-,root,root,-)
 %license COPYING
 %{_bindir}/mmi-manager
+%{_libdir}/libmmi*.so*
+%{_datadir}/iu/*
 %{_libdir}/provider/libmmi*.so
 %{_libdir}/fusion/libmmi*.so
-%{_datadir}/iu/*
 
 %files devel
 %manifest %{name}.manifest
similarity index 100%
rename from src/main.c
rename to src/bin/main.c
diff --git a/src/bin/meson.build b/src/bin/meson.build
new file mode 100644 (file)
index 0000000..89d5aa2
--- /dev/null
@@ -0,0 +1,15 @@
+mmi_manager_srcs = [
+       'main.c'
+       ]
+
+mmi_manager_deps = [
+       mmimgr_declared_dep
+       ]
+
+executable('mmi-manager',
+       mmi_manager_srcs,
+       dependencies : [mmi_manager_deps],
+       install_dir : mmi_manager_prefix_bindir,
+       install : true,
+       pie : true
+       )
similarity index 100%
rename from src/iu/iu_rule.cpp
rename to src/mmimgr/iu/iu_rule.cpp
similarity index 100%
rename from src/iu/iu_rule.h
rename to src/mmimgr/iu/iu_rule.h
similarity index 100%
rename from src/iu/mmi_iu.cpp
rename to src/mmimgr/iu/mmi_iu.cpp
similarity index 100%
rename from src/iu/mmi_iu.h
rename to src/mmimgr/iu/mmi_iu.h
similarity index 60%
rename from src/meson.build
rename to src/mmimgr/meson.build
index 3cb4cf9..c21447b 100644 (file)
@@ -1,5 +1,4 @@
-mmi_manager_srcs = [
-       'main.c',
+mmimgr_srcs = [
        'mmi-manager.h',
        'mmi-manager.c',
        'mmi-core.h',
@@ -42,17 +41,17 @@ install_headers(
 
 install_data('iu/data/default_rule.json', install_dir : '/usr/share/iu/')
 
-glib_dep = dependency('glib-2.0')
-gio_dep = dependency('gio-2.0')
-bundle_dep = dependency('bundle')
-dlog_dep = dependency('dlog')
+glib_dep = dependency('glib-2.0', method : 'pkg-config')
+gio_dep = dependency('gio-2.0', method : 'pkg-config')
+bundle_dep = dependency('bundle', method : 'pkg-config')
+dlog_dep = dependency('dlog', method : 'pkg-config')
 ecore_dep = dependency('ecore', method : 'pkg-config')
 rpc_port_dep = dependency('rpc-port')
 json_glib_dep = dependency('json-glib-1.0')
 libtzplatform_config_dep = dependency('libtzplatform-config')
-xkbcommon_dep = dependency('xkbcommon')
+xkbcommon_dep = dependency('xkbcommon', method : 'pkg-config')
 
-mmi_manager_deps = [
+mmimgr_deps = [
        ecore_dep,
        glib_dep,
        gio_dep,
@@ -63,30 +62,27 @@ mmi_manager_deps = [
        libtzplatform_config_dep,
        xkbcommon_dep]
 
-executable('mmi-manager',
-       mmi_manager_srcs,
-       dependencies : [mmi_manager_deps],
-       install_dir : mmi_manager_prefix_bindir,
-       export_dynamic : true,
-       install : true
-       )
+mmimgr_include_dirs = include_directories('.')
 
-mmi_manager_include_dirs = include_directories(
-       '.'
+mmimgr_library = library('mmimgr',
+       mmimgr_srcs,
+       include_directories : [ mmimgr_include_dirs ],
+       dependencies : [mmimgr_deps],
+       install_dir : mmi_manager_prefix_libdir,
+       install : true
        )
 
-mmi_manager_declared_dep = declare_dependency(
-       dependencies : [mmi_manager_deps],
-       include_directories : [mmi_manager_include_dirs]
+mmimgr_declared_dep = declare_dependency(
+       link_with : mmimgr_library,
+       dependencies : [mmimgr_deps],
+       include_directories : [mmimgr_include_dirs]
        )
 
 pkgconfig.generate(
-       filebase : 'mmi-manager',
-       name : 'mmi-manager',
-       description : 'Multi-modal Interaction Manager',
+       filebase : 'libmmimgr',
+       name : 'libmmimgr',
+       description : 'Multi-modal Interaction Manager Library',
        version : meson.project_version(),
+       libraries : mmimgr_library
        )
 
-subdir('modules/modality_keyboard')
-subdir('modules/ref_fusion')
-
similarity index 100%
rename from src/mmi-client.c
rename to src/mmimgr/mmi-client.c
similarity index 100%
rename from src/mmi-client.h
rename to src/mmimgr/mmi-client.h
similarity index 100%
rename from src/mmi-common.c
rename to src/mmimgr/mmi-common.c
similarity index 100%
rename from src/mmi-common.h
rename to src/mmimgr/mmi-common.h
similarity index 100%
rename from src/mmi-core.c
rename to src/mmimgr/mmi-core.c
similarity index 100%
rename from src/mmi-core.h
rename to src/mmimgr/mmi-core.h
similarity index 100%
rename from src/mmi-fusion.c
rename to src/mmimgr/mmi-fusion.c
similarity index 100%
rename from src/mmi-fusion.h
rename to src/mmimgr/mmi-fusion.h
similarity index 100%
rename from src/mmi-manager.c
rename to src/mmimgr/mmi-manager.c
similarity index 100%
rename from src/mmi-manager.h
rename to src/mmimgr/mmi-manager.h
similarity index 100%
rename from src/mmi-provider.c
rename to src/mmimgr/mmi-provider.c
similarity index 100%
rename from src/mmi-provider.h
rename to src/mmimgr/mmi-provider.h
index 6e8be6d..c656257 100644 (file)
@@ -5,24 +5,30 @@ modality_keyboard_srcs = [
        'wayland-input.c',
        ]
 
-install_headers(
-       'mmi-keyboard-provider.h'
-       )
-
-modality_keyboard_include_dirs = include_directories(
-       '.',
-       )
+modality_keyboard_include_dirs = include_directories('.')
 
 wayland_client_dep = dependency('wayland-client', method : 'pkg-config')
 xkbcommon_dep = dependency('xkbcommon', method : 'pkg-config')
 tz_extension_dep = dependency('tizen-extension-client', method : 'pkg-config')
 
+modality_keyboard_deps = [
+       dlog_dep,
+       wayland_client_dep,
+       xkbcommon_dep,
+       tz_extension_dep,
+       ecore_dep,
+       mmimgr_declared_dep
+       ]
+
 mmi_provider_prefix_libdir = join_paths(mmi_manager_prefix_libdir, 'provider')
 
-modality_keyboard_shared = shared_library('mmi_modality_keyboard',
-               modality_keyboard_srcs,
-               include_directories : [ modality_keyboard_include_dirs, mmi_manager_include_dirs ],
-               dependencies : [ dlog_dep, wayland_client_dep, xkbcommon_dep, tz_extension_dep, ecore_dep ],
-               install_dir : mmi_provider_prefix_libdir,
-               override_options : ['b_lundef=false'],
-               install : true)
+modality_keyboard_shared = shared_library(
+       'mmi_modality_keyboard',
+       modality_keyboard_srcs,
+       include_directories : [modality_keyboard_include_dirs],
+       dependencies : [modality_keyboard_deps],
+       install_dir : mmi_provider_prefix_libdir,
+       install : true,
+       pie : true
+       )
+
index cdda781..fd49833 100644 (file)
@@ -3,24 +3,28 @@ ref_fusion_srcs = [
        'mmi-ref-fusion.c',
        ]
 
-install_headers(
-       'mmi-ref-fusion.h'
-       )
-
-ref_fusion_include_dirs = include_directories(
-       '.',
-)
+ref_fusion_include_dirs = include_directories('.')
 
-glib_dep = dependency('glib-2.0')
-dlog_dep = dependency('dlog')
+glib_dep = dependency('glib-2.0', method : 'pkg-config')
+dlog_dep = dependency('dlog', method : 'pkg-config')
 ecore_dep = dependency('ecore', method : 'pkg-config')
 
+ref_fusion_deps = [
+       glib_dep,
+       dlog_dep,
+       ecore_dep,
+       mmimgr_declared_dep
+       ]
+
 mmi_fusion_prefix_libdir = join_paths(mmi_manager_prefix_libdir, 'fusion')
 
-ref_fusion_shared = shared_library('mmi_ref_fusion',
-               ref_fusion_srcs,
-               include_directories : [ ref_fusion_include_dirs, mmi_manager_include_dirs ],
-               dependencies : [glib_dep, dlog_dep, ecore_dep ],
-               install_dir : mmi_fusion_prefix_libdir,
-               override_options : ['b_lundef=false'],
-               install : true)
+ref_fusion_shared = shared_library(
+       'mmi_ref_fusion',
+       ref_fusion_srcs,
+       include_directories : [ref_fusion_include_dirs],
+       dependencies : [ref_fusion_deps],
+       install_dir : mmi_fusion_prefix_libdir,
+       install : true,
+       pie : true
+       )
+
index af726b7..01928c2 100644 (file)
@@ -7,24 +7,23 @@ iu_tests_srcs = [
        'mmi_iu_noinit_unittests.cpp',
        'mmi_iu_unittests.cpp',
        'output_intent_unittests.cpp',
-       '../../src/mmi-common.c',
-       '../../src/iu/input_intent.cpp',
-       '../../src/iu/intent_understanding_engine.cpp',
-       '../../src/iu/iu_rule.cpp',
-       '../../src/iu/mmi_iu.cpp',
-       '../../src/iu/output_intent.cpp'
+       '../../src/mmimgr/iu/input_intent.cpp',
+       '../../src/mmimgr/iu/intent_understanding_engine.cpp',
+       '../../src/mmimgr/iu/iu_rule.cpp',
+       '../../src/mmimgr/iu/mmi_iu.cpp',
+       '../../src/mmimgr/iu/output_intent.cpp'
        ]
 
 gmock_dep = dependency('gmock', method : 'pkg-config')
 ecore_dep = dependency('ecore', method : 'pkg-config')
 json_glib_dep = dependency('json-glib-1.0', method : 'pkg-config')
 
-incdir = include_directories('../../src/iu')
+incdir = include_directories('../../src/mmimgr/iu')
 
 executable(
        'iu-tests',
        iu_tests_srcs,
-       dependencies : [mmi_manager_declared_dep, gmock_dep, ecore_dep, json_glib_dep],
+       dependencies : [mmimgr_declared_dep, gmock_dep, ecore_dep, json_glib_dep],
        include_directories : incdir,
        install_dir : mmi_manager_prefix_bindir,
        install : true
index 9e2a2bf..75ae57f 100644 (file)
@@ -8,7 +8,7 @@ ecore_dep = dependency('ecore', method : 'pkg-config')
 executable(
        'mmi-manager-tests',
        mmi_manager_tests_srcs,
-       dependencies : [mmi_manager_declared_dep, gmock_dep, ecore_dep],
+       dependencies : [mmimgr_declared_dep, gmock_dep, ecore_dep],
        install_dir : mmi_manager_prefix_bindir,
        install : true
        )