[Build] change dir structure
authorJaeyun <jy1210.jung@samsung.com>
Tue, 8 Jan 2019 05:12:40 +0000 (14:12 +0900)
committerMyungJoo Ham <myungjoo.ham@gmail.com>
Mon, 14 Jan 2019 01:09:38 +0000 (10:09 +0900)
1. update meson/cmake to change directory structure (move common files and plugins to gst/nnstreamer)
2. move nnstreamer meson-build to gst/nnstreamer
3. set project args to build nnstreamer

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
81 files changed:
CMakeLists.txt
gst/meson.build [new file with mode: 0644]
gst/nnstreamer/meson.build
gst/nnstreamer/tensor_aggregator/CMakeLists.txt [moved from gst/tensor_aggregator/CMakeLists.txt with 100% similarity]
gst/nnstreamer/tensor_aggregator/README.md [moved from gst/tensor_aggregator/README.md with 100% similarity]
gst/nnstreamer/tensor_aggregator/meson.build [moved from gst/tensor_aggregator/meson.build with 100% similarity]
gst/nnstreamer/tensor_aggregator/tensor_aggregator.c [moved from gst/tensor_aggregator/tensor_aggregator.c with 100% similarity]
gst/nnstreamer/tensor_aggregator/tensor_aggregator.h [moved from gst/tensor_aggregator/tensor_aggregator.h with 100% similarity]
gst/nnstreamer/tensor_converter/CMakeLists.txt [moved from gst/tensor_converter/CMakeLists.txt with 100% similarity]
gst/nnstreamer/tensor_converter/README.md [moved from gst/tensor_converter/README.md with 100% similarity]
gst/nnstreamer/tensor_converter/meson.build [moved from gst/tensor_converter/meson.build with 100% similarity]
gst/nnstreamer/tensor_converter/tensor_converter.c [moved from gst/tensor_converter/tensor_converter.c with 100% similarity]
gst/nnstreamer/tensor_converter/tensor_converter.h [moved from gst/tensor_converter/tensor_converter.h with 100% similarity]
gst/nnstreamer/tensor_decoder/CMakeLists.txt [moved from gst/tensor_decoder/CMakeLists.txt with 100% similarity]
gst/nnstreamer/tensor_decoder/README.md [moved from gst/tensor_decoder/README.md with 100% similarity]
gst/nnstreamer/tensor_decoder/font.h [moved from gst/tensor_decoder/font.h with 100% similarity]
gst/nnstreamer/tensor_decoder/meson.build [moved from gst/tensor_decoder/meson.build with 100% similarity]
gst/nnstreamer/tensor_decoder/tensordec-boundingbox.c [moved from gst/tensor_decoder/tensordec-boundingbox.c with 100% similarity]
gst/nnstreamer/tensor_decoder/tensordec-directvideo.c [moved from gst/tensor_decoder/tensordec-directvideo.c with 100% similarity]
gst/nnstreamer/tensor_decoder/tensordec-imagelabel.c [moved from gst/tensor_decoder/tensordec-imagelabel.c with 100% similarity]
gst/nnstreamer/tensor_decoder/tensordec-plugins.c [moved from gst/tensor_decoder/tensordec-plugins.c with 100% similarity]
gst/nnstreamer/tensor_decoder/tensordec.c [moved from gst/tensor_decoder/tensordec.c with 100% similarity]
gst/nnstreamer/tensor_decoder/tensordec.h [moved from gst/tensor_decoder/tensordec.h with 100% similarity]
gst/nnstreamer/tensor_demux/CMakeLists.txt [moved from gst/tensor_demux/CMakeLists.txt with 100% similarity]
gst/nnstreamer/tensor_demux/gsttensordemux.c [moved from gst/tensor_demux/gsttensordemux.c with 100% similarity]
gst/nnstreamer/tensor_demux/gsttensordemux.h [moved from gst/tensor_demux/gsttensordemux.h with 100% similarity]
gst/nnstreamer/tensor_demux/meson.build [moved from gst/tensor_demux/meson.build with 100% similarity]
gst/nnstreamer/tensor_filter/CMakeLists.txt [moved from gst/tensor_filter/CMakeLists.txt with 100% similarity]
gst/nnstreamer/tensor_filter/README.md [moved from gst/tensor_filter/README.md with 100% similarity]
gst/nnstreamer/tensor_filter/meson.build [moved from gst/tensor_filter/meson.build with 90% similarity]
gst/nnstreamer/tensor_filter/tensor_filter.c [moved from gst/tensor_filter/tensor_filter.c with 100% similarity]
gst/nnstreamer/tensor_filter/tensor_filter.h [moved from gst/tensor_filter/tensor_filter.h with 100% similarity]
gst/nnstreamer/tensor_filter/tensor_filter_custom.c [moved from gst/tensor_filter/tensor_filter_custom.c with 100% similarity]
gst/nnstreamer/tensor_filter/tensor_filter_tensorflow.c [moved from gst/tensor_filter/tensor_filter_tensorflow.c with 100% similarity]
gst/nnstreamer/tensor_filter/tensor_filter_tensorflow_core.cc [moved from gst/tensor_filter/tensor_filter_tensorflow_core.cc with 100% similarity]
gst/nnstreamer/tensor_filter/tensor_filter_tensorflow_core.h [moved from gst/tensor_filter/tensor_filter_tensorflow_core.h with 100% similarity]
gst/nnstreamer/tensor_filter/tensor_filter_tensorflow_lite.c [moved from gst/tensor_filter/tensor_filter_tensorflow_lite.c with 100% similarity]
gst/nnstreamer/tensor_filter/tensor_filter_tensorflow_lite_core.cc [moved from gst/tensor_filter/tensor_filter_tensorflow_lite_core.cc with 100% similarity]
gst/nnstreamer/tensor_filter/tensor_filter_tensorflow_lite_core.h [moved from gst/tensor_filter/tensor_filter_tensorflow_lite_core.h with 100% similarity]
gst/nnstreamer/tensor_merge/CMakeLists.txt [moved from gst/tensor_merge/CMakeLists.txt with 100% similarity]
gst/nnstreamer/tensor_merge/README.md [moved from gst/tensor_merge/README.md with 100% similarity]
gst/nnstreamer/tensor_merge/gsttensormerge.c [moved from gst/tensor_merge/gsttensormerge.c with 100% similarity]
gst/nnstreamer/tensor_merge/gsttensormerge.h [moved from gst/tensor_merge/gsttensormerge.h with 100% similarity]
gst/nnstreamer/tensor_merge/meson.build [moved from gst/tensor_merge/meson.build with 100% similarity]
gst/nnstreamer/tensor_mux/CMakeLists.txt [moved from gst/tensor_mux/CMakeLists.txt with 100% similarity]
gst/nnstreamer/tensor_mux/gsttensormux.c [moved from gst/tensor_mux/gsttensormux.c with 100% similarity]
gst/nnstreamer/tensor_mux/gsttensormux.h [moved from gst/tensor_mux/gsttensormux.h with 100% similarity]
gst/nnstreamer/tensor_mux/meson.build [moved from gst/tensor_mux/meson.build with 100% similarity]
gst/nnstreamer/tensor_reposink/CMakeLists.txt [moved from gst/tensor_reposink/CMakeLists.txt with 100% similarity]
gst/nnstreamer/tensor_reposink/meson.build [moved from gst/tensor_reposink/meson.build with 100% similarity]
gst/nnstreamer/tensor_reposink/tensor_reposink.c [moved from gst/tensor_reposink/tensor_reposink.c with 100% similarity]
gst/nnstreamer/tensor_reposink/tensor_reposink.h [moved from gst/tensor_reposink/tensor_reposink.h with 100% similarity]
gst/nnstreamer/tensor_reposrc/CMakeLists.txt [moved from gst/tensor_reposrc/CMakeLists.txt with 100% similarity]
gst/nnstreamer/tensor_reposrc/meson.build [moved from gst/tensor_reposrc/meson.build with 100% similarity]
gst/nnstreamer/tensor_reposrc/tensor_reposrc.c [moved from gst/tensor_reposrc/tensor_reposrc.c with 100% similarity]
gst/nnstreamer/tensor_reposrc/tensor_reposrc.h [moved from gst/tensor_reposrc/tensor_reposrc.h with 100% similarity]
gst/nnstreamer/tensor_saveload/CMakeLists.txt [moved from gst/tensor_saveload/CMakeLists.txt with 100% similarity]
gst/nnstreamer/tensor_saveload/README.md [moved from gst/tensor_saveload/README.md with 100% similarity]
gst/nnstreamer/tensor_saveload/meson.build [moved from gst/tensor_saveload/meson.build with 100% similarity]
gst/nnstreamer/tensor_saveload/tensor_load.c [moved from gst/tensor_saveload/tensor_load.c with 100% similarity]
gst/nnstreamer/tensor_saveload/tensor_load.h [moved from gst/tensor_saveload/tensor_load.h with 100% similarity]
gst/nnstreamer/tensor_sink/CMakeLists.txt [moved from gst/tensor_sink/CMakeLists.txt with 100% similarity]
gst/nnstreamer/tensor_sink/README.md [moved from gst/tensor_sink/README.md with 100% similarity]
gst/nnstreamer/tensor_sink/meson.build [moved from gst/tensor_sink/meson.build with 100% similarity]
gst/nnstreamer/tensor_sink/tensor_sink.c [moved from gst/tensor_sink/tensor_sink.c with 100% similarity]
gst/nnstreamer/tensor_sink/tensor_sink.h [moved from gst/tensor_sink/tensor_sink.h with 100% similarity]
gst/nnstreamer/tensor_source/README.md [moved from gst/tensor_source/README.md with 100% similarity]
gst/nnstreamer/tensor_split/CMakeLists.txt [moved from gst/tensor_split/CMakeLists.txt with 100% similarity]
gst/nnstreamer/tensor_split/gsttensorsplit.c [moved from gst/tensor_split/gsttensorsplit.c with 100% similarity]
gst/nnstreamer/tensor_split/gsttensorsplit.h [moved from gst/tensor_split/gsttensorsplit.h with 100% similarity]
gst/nnstreamer/tensor_split/meson.build [moved from gst/tensor_split/meson.build with 100% similarity]
gst/nnstreamer/tensor_transform/CMakeLists.txt [moved from gst/tensor_transform/CMakeLists.txt with 100% similarity]
gst/nnstreamer/tensor_transform/README.md [moved from gst/tensor_transform/README.md with 100% similarity]
gst/nnstreamer/tensor_transform/meson.build [moved from gst/tensor_transform/meson.build with 100% similarity]
gst/nnstreamer/tensor_transform/tensor_transform.c [moved from gst/tensor_transform/tensor_transform.c with 100% similarity]
gst/nnstreamer/tensor_transform/tensor_transform.h [moved from gst/tensor_transform/tensor_transform.h with 100% similarity]
gst/nnstreamer/tensor_transform/transform-orc.orc [moved from gst/tensor_transform/transform-orc.orc with 100% similarity]
meson.build
packaging/nnstreamer.spec
tests/meson.build
tests/nnstreamer_plugins/unittest_plugins.cpp

index b431b46..058eb90 100644 (file)
@@ -104,7 +104,7 @@ ENDIF(ENABLE_TEST)
 
 SET(OBJECTS)
 FOREACH(PRJ IN LISTS PROJECTS)
-       ADD_SUBDIRECTORY(gst/${PRJ})
+       ADD_SUBDIRECTORY(gst/nnstreamer/${PRJ})
        LIST(APPEND OBJECTS $<TARGET_OBJECTS:${PRJ}OBJ>)
 ENDFOREACH(PRJ)
 
@@ -120,12 +120,20 @@ IF(ENABLE_TENSORFLOW)
 ENDIF(ENABLE_TENSORFLOW)
 LIST(LENGTH FILTER_DEP FILTER_DEP_LEN)
 
-ADD_LIBRARY(nnstreamerStatic STATIC gst/nnstreamer/nnstreamer.c gst/nnstreamer/tensor_common.c gst/nnstreamer/tensor_repo.c gst/nnstreamer/nnstreamer_conf.c gst/nnstreamer/nnstreamer_subplugin.c ${OBJECTS})
+SET(NNST_COMMON_SRCS
+       gst/nnstreamer/nnstreamer.c
+       gst/nnstreamer/nnstreamer_conf.c
+       gst/nnstreamer/nnstreamer_subplugin.c
+       gst/nnstreamer/tensor_common.c
+       gst/nnstreamer/tensor_repo.c
+)
+
+ADD_LIBRARY(nnstreamerStatic STATIC ${NNST_COMMON_SRCS} ${OBJECTS})
 SET_TARGET_PROPERTIES(nnstreamerStatic PROPERTIES OUTPUT_NAME nnstreamer)
 TARGET_INCLUDE_DIRECTORIES(nnstreamerStatic PUBLIC ${pkgs_INCLUDE_DIRS})
 TARGET_COMPILE_OPTIONS(nnstreamerStatic PUBLIC ${pkgs_CFLAGS_OTHER})
 
-ADD_LIBRARY(nnstreamer SHARED gst/nnstreamer/nnstreamer.c gst/nnstreamer/tensor_common.c gst/nnstreamer/tensor_repo.c ${OBJECTS})
+ADD_LIBRARY(nnstreamer SHARED ${NNST_COMMON_SRCS} ${OBJECTS})
 TARGET_INCLUDE_DIRECTORIES(nnstreamer PUBLIC ${pkgs_INCLUDE_DIRS})
 TARGET_COMPILE_OPTIONS(nnstreamer PUBLIC ${pkgs_CFLAGS_OTHER})
 TARGET_LINK_LIBRARIES(nnstreamer ${pkgs_LIBRARIES} ${FILTER_LIB})
@@ -143,16 +151,12 @@ INSTALL(TARGETS nnstreamerStatic nnstreamer
 
 CONFIGURE_FILE(nnstreamer.pc.in nnstreamer.pc @ONLY)
 
-# For nnstreamer users (gst app developers using via gstreamer API)
-INSTALL(FILES gst/nnstreamer/tensor_typedef.h
-       DESTINATION ${INCLUDE_INSTALL_DIR}/nnstreamer
-       )
-
-# For nnstreamer custom filter developers
-INSTALL(FILES gst/nnstreamer/tensor_common.h gst/nnstreamer/tensor_filter_custom.h
+# tensor_typedef.h for nnstreamer users (gst app developers using via gstreamer API)
+# tensor_filter_custom.h for nnstreamer custom filter developers
+INSTALL(FILES gst/nnstreamer/tensor_typedef.h gst/nnstreamer/tensor_filter_custom.h
        DESTINATION ${INCLUDE_INSTALL_DIR}/nnstreamer
-       )
+)
 
 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/nnstreamer.pc
        DESTINATION ${LIB_INSTALL_DIR}/pkgconfig
-       )
+)
diff --git a/gst/meson.build b/gst/meson.build
new file mode 100644 (file)
index 0000000..94861f5
--- /dev/null
@@ -0,0 +1 @@
+subdir('nnstreamer')\r
index 0357c41..4ed7d6b 100644 (file)
@@ -1,9 +1,98 @@
+nnstreamer_inc = include_directories('.')
+nnstreamer_sources = []
+nnstreamer_headers = []
+
+# Dependencies
+nnstreamer_base_deps = [
+  glib_dep,
+  gst_dep,
+  gst_base_dep,
+  gst_controller_dep,
+  gst_video_dep,
+  gst_audio_dep,
+  libm_dep,
+  libdl_dep,
+  libpthread_dep
+]
+
+if have_orcc
+  nnstreamer_base_deps += [orc_dep]
+endif
+
+# For extra dependencies (subplugins, filters)
+nnstreamer_extra_deps = []
+
+# Add nnstreamer registerer and common sources
 nnst_common_sources = [
   'nnstreamer.c',
-  'tensor_repo.c',
-  'tensor_common.c'
+  'nnstreamer_conf.c',
+  'nnstreamer_subplugin.c',
+  'tensor_common.c',
+  'tensor_repo.c'
 ]
 
 foreach s : nnst_common_sources
   nnstreamer_sources += join_paths(meson.current_source_dir(), s)
 endforeach
+
+# Common headers to be installed
+nnst_common_headers = [
+  'tensor_typedef.h',
+  'tensor_filter_custom.h'
+]
+
+foreach h : nnst_common_headers
+  nnstreamer_headers += join_paths(meson.current_source_dir(), h)
+endforeach
+
+# Add plugins
+nnst_plugins = [
+  'tensor_aggregator',
+  'tensor_converter',
+  'tensor_decoder',
+  'tensor_demux',
+  'tensor_merge',
+  'tensor_mux',
+  'tensor_saveload',
+  'tensor_sink',
+  'tensor_split',
+  'tensor_transform',
+  'tensor_filter',
+  'tensor_reposrc',
+  'tensor_reposink'
+]
+
+foreach p : nnst_plugins
+  subdir(p)
+endforeach
+
+# Build libraries ("both_libraries" are supported from 0.46.)
+nnstreamer_shared = shared_library('nnstreamer',
+  nnstreamer_sources,
+  dependencies: [nnstreamer_base_deps, nnstreamer_extra_deps],
+  include_directories: nnstreamer_inc,
+  install: true,
+  install_dir: plugins_install_dir
+)
+
+nnstreamer_static = static_library('nnstreamer',
+  nnstreamer_sources,
+  dependencies: [nnstreamer_base_deps, nnstreamer_extra_deps],
+  include_directories: nnstreamer_inc,
+  install: true,
+  install_dir: libs_install_dir
+)
+
+nnstreamer_lib = nnstreamer_shared
+if get_option('default_library') == 'static'
+  nnstreamer_lib = nnstreamer_static
+endif
+
+nnstreamer_dep = declare_dependency(link_with: nnstreamer_lib,
+  dependencies: nnstreamer_base_deps,
+  include_directories: nnstreamer_inc)
+
+# Install headers into /{includedir}/nnstreamer
+install_headers(nnstreamer_headers,
+  subdir: 'nnstreamer'
+)
similarity index 90%
rename from gst/tensor_filter/meson.build
rename to gst/nnstreamer/tensor_filter/meson.build
index 7479b4c..12d2fb6 100644 (file)
@@ -8,7 +8,7 @@ if have_tensorflow
 
   tensor_filter_tfcore_lib_shared = shared_library('tensor_filter_tfcore',
     ['tensor_filter_tensorflow_core.cc'],
-    cpp_args: nnstreamer_base_args + ['-Wno-sign-compare'],
+    cpp_args: ['-Wno-sign-compare'],
     dependencies: [tf_dep, protobuf_dep, glib_dep, gst_dep],
     include_directories: nnstreamer_inc,
     install: true,
@@ -17,7 +17,7 @@ if have_tensorflow
 
   tensor_filter_tfcore_lib_static = static_library('tensor_filter_tfcore',
     ['tensor_filter_tensorflow_core.cc'],
-    cpp_args: nnstreamer_base_args + ['-Wno-sign-compare'],
+    cpp_args: ['-Wno-sign-compare'],
     dependencies: [tf_dep, protobuf_dep, glib_dep, gst_dep],
     include_directories: nnstreamer_inc,
     install: true,
@@ -38,7 +38,7 @@ if have_tensorflow_lite
 
   tensor_filter_tflitecore_lib_shared = shared_library('tensor_filter_tflitecore',
     ['tensor_filter_tensorflow_lite_core.cc'],
-    cpp_args: nnstreamer_base_args + ['-Wno-sign-compare'],
+    cpp_args: ['-Wno-sign-compare'],
     dependencies: [tflite_dep, libpthread_dep, libdl_dep, glib_dep, gst_dep],
     include_directories: nnstreamer_inc,
     install: true,
@@ -47,7 +47,7 @@ if have_tensorflow_lite
 
   tensor_filter_tflitecore_lib_static = static_library('tensor_filter_tflitecore',
     ['tensor_filter_tensorflow_lite_core.cc'],
-    cpp_args: nnstreamer_base_args + ['-Wno-sign-compare'],
+    cpp_args: ['-Wno-sign-compare'],
     dependencies: [tflite_dep, libpthread_dep, libdl_dep, glib_dep, gst_dep],
     include_directories: nnstreamer_inc,
     install: true,
index 0e45b49..7076772 100644 (file)
@@ -12,7 +12,7 @@ project('nnstreamer', 'c', 'cpp',
   ]
 )
 
-add_project_arguments('-DVERSION="'+meson.project_version()+'"', language: 'c')
+add_project_arguments('-DVERSION="'+meson.project_version()+'"', language: ['c', 'cpp'])
 
 cc = meson.get_compiler('c')
 cxx = meson.get_compiler('cpp')
@@ -23,17 +23,6 @@ gst_api_verision = '1.0'
 nnstreamer_conf = configuration_data()
 nnstreamer_conf.set('VERSION', meson.project_version())
 
-nnstreamer_inc = include_directories('gst/nnstreamer')
-nnstreamer_sources = []
-nnstreamer_base_args = []
-
-# Common headers to be installed
-nnstreamer_headers = [
-  'gst/nnstreamer/tensor_common.h',
-  'gst/nnstreamer/tensor_typedef.h',
-  'gst/nnstreamer/tensor_filter_custom.h'
-]
-
 # Set install path
 nnstreamer_prefix = get_option('prefix')
 nnstreamer_libdir = join_paths(nnstreamer_prefix, get_option('libdir'))
@@ -65,21 +54,6 @@ libm_dep = cc.find_library('m') # cmath library
 libdl_dep = cc.find_library('dl') # DL library
 libpthread_dep = cxx.find_library('pthread') # pthread for tensorflow-lite
 
-nnstreamer_base_deps = [
-  glib_dep,
-  gst_dep,
-  gst_base_dep,
-  gst_controller_dep,
-  gst_video_dep,
-  gst_audio_dep,
-  libm_dep,
-  libdl_dep,
-  libpthread_dep
-]
-
-# For extra dependencies (subplugins, filters)
-nnstreamer_extra_deps = []
-
 # Orc
 have_orcc = false
 
@@ -88,11 +62,10 @@ orcc = find_program('orcc', required: false)
 if orc_dep.found() and orcc.found()
   have_orcc = true
   orcc_args = [orcc, '--include', 'glib.h']
-  nnstreamer_base_deps += [orc_dep]
-  nnstreamer_base_args += ['-DHAVE_ORC=1']
+  add_project_arguments('-DHAVE_ORC=1', language: ['c', 'cpp'])
 else
   message('Cannot find orc library')
-  nnstreamer_base_args += ['-DDISABLE_ORC=1']
+  add_project_arguments('-DDISABLE_ORC=1', language: ['c', 'cpp'])
 endif
 
 # Tensorflow
@@ -104,7 +77,7 @@ if get_option('ENABLE_TENSORFLOW')
 
   if tf_dep.found() and protobuf_dep.found()
     have_tensorflow = true
-    nnstreamer_base_args += ['-DENABLE_TENSORFLOW=1']
+    add_project_arguments('-DENABLE_TENSORFLOW=1', language: ['c', 'cpp'])
   else
     message('Cannot find tensorflow')
   endif
@@ -118,75 +91,25 @@ if get_option('ENABLE_TENSORFLOW_LITE')
 
   if tflite_dep.found()
     have_tensorflow_lite = true
-    nnstreamer_base_args += ['-DENABLE_TENSORFLOW_LITE=1']
+    add_project_arguments('-DENABLE_TENSORFLOW_LITE=1', language: ['c', 'cpp'])
   else
     message('Cannot find tensorflow-lite')
   endif
 endif
 
 # Build nnstreamer (common, plugins)
-projects = [
-  'nnstreamer',
-  'tensor_aggregator',
-  'tensor_converter',
-  'tensor_decoder',
-  'tensor_demux',
-  'tensor_merge',
-  'tensor_mux',
-  'tensor_saveload',
-  'tensor_sink',
-  'tensor_split',
-  'tensor_transform',
-  'tensor_filter',
-  'tensor_reposrc',
-  'tensor_reposink'
-]
-
-foreach p : projects
-  subdir('gst/'+ p)
-endforeach
-
-# "both_libraries" are supported from 0.46.
-nnstreamer_shared = shared_library('nnstreamer',
-  nnstreamer_sources,
-  c_args: nnstreamer_base_args,
-  dependencies: [nnstreamer_base_deps, nnstreamer_extra_deps],
-  include_directories: nnstreamer_inc,
-  install: true,
-  install_dir: plugins_install_dir
-)
+subdir('gst')
 
-nnstreamer_static = static_library('nnstreamer',
-  nnstreamer_sources,
-  c_args: nnstreamer_base_args,
-  dependencies: [nnstreamer_base_deps, nnstreamer_extra_deps],
-  include_directories: nnstreamer_inc,
-  install: true,
-  install_dir: libs_install_dir
-)
+# Build nnstreamer examples
+subdir('nnstreamer_example')
 
-nnstreamer_lib = nnstreamer_shared
-if get_option('default_library') == 'static'
-  nnstreamer_lib = nnstreamer_static
+# Build unittests
+if get_option('ENABLE_TEST')
+  subdir('tests')
 endif
 
-nnstreamer_dep = declare_dependency(link_with: nnstreamer_lib, include_directories: nnstreamer_inc)
-
-# Install headers into /{includedir}/nnstreamer
-install_headers(nnstreamer_headers,
-  subdir: 'nnstreamer'
-)
-
 configure_file(input: 'nnstreamer.pc.in', output: 'nnstreamer.pc',
   install: true,
   install_dir: join_paths(libs_install_dir, 'pkgconfig'),
   configuration: nnstreamer_conf
 )
-
-# Build nnstreamer examples
-subdir('nnstreamer_example')
-
-# Build unittests
-if get_option('ENABLE_TEST')
-  subdir('tests')
-endif
index 61cf327..b2eca4d 100644 (file)
@@ -99,7 +99,6 @@ mkdir -p build
 
 %ifarch x86_64 aarch64
     meson --buildtype=plain --werror --prefix=%{_prefix} --libdir=%{_libdir} --bindir=%{nnstexampledir} --includedir=%{_includedir} -DINSTALL_EXAMPLES=true build
-    export TEST_TENSORFLOW=1
 %else
     meson --buildtype=plain --werror --prefix=%{_prefix} --libdir=%{_libdir} --bindir=%{nnstexampledir} --includedir=%{_includedir} -DINSTALL_EXAMPLES=true -DENABLE_TENSORFLOW=false build
 %endif
@@ -110,7 +109,10 @@ ninja -C build %{?_smp_mflags}
     pushd build
     # Copy bmp2png for ssat
     cp ./tests/bmp2png ../tests
-    export LD_LIBRARY_PATH=$(pwd):$(pwd)/gst/tensor_filter
+    export LD_LIBRARY_PATH=$(pwd)/gst/nnstreamer:$(pwd)/gst/nnstreamer/tensor_filter
+    %ifarch x86_64 aarch64
+    export TEST_TENSORFLOW=1
+    %endif
     ./tests/unittest_common
     ./tests/unittest_sink --gst-plugin-path=.
     ./tests/unittest_plugins --gst-plugin-path=.
@@ -158,8 +160,8 @@ mkdir -p %{buildroot}%{_datadir}/nnstreamer/unittest/
 cp -r result %{buildroot}%{_datadir}/nnstreamer/unittest/
 %endif
 
-install build/libnnstreamer.a %{buildroot}%{_libdir}/
-install build/gst/tensor_filter/*.a %{buildroot}%{_libdir}/
+install build/gst/nnstreamer/libnnstreamer.a %{buildroot}%{_libdir}/
+install build/gst/nnstreamer/tensor_filter/*.a %{buildroot}%{_libdir}/
 
 %post -p /sbin/ldconfig
 %postun -p /sbin/ldconfig
index c5ebfca..75b0583 100644 (file)
@@ -13,12 +13,10 @@ if gtest_dep.found()
   # This custom filter is used in unittest_sink.
   nnscustom_framecounter_lib = library('nnscustom_framecounter',
     'nnstreamer_sink/nnscustom_framecounter.c',
-    c_args: nnstreamer_base_args,
     dependencies: [glib_dep],
     include_directories: nnstreamer_inc)
 
   nnstreamer_unittest_deps = [
-    nnstreamer_base_deps,
     nnstreamer_dep,
     gst_app_dep,
     gst_check_dep,
@@ -28,7 +26,6 @@ if gtest_dep.found()
   # Run unittest_common
   unittest_common = executable('unittest_common',
     'common/unittest_common.cpp',
-    cpp_args: nnstreamer_base_args,
     dependencies: [nnstreamer_unittest_deps])
 
   test('unittest_common', unittest_common)
@@ -36,7 +33,6 @@ if gtest_dep.found()
   # Run unittest_sink
   unittest_sink = executable('unittest_sink',
     'nnstreamer_sink/unittest_sink.cpp',
-    cpp_args: nnstreamer_base_args,
     dependencies: [nnstreamer_unittest_deps])
 
   test('unittest_sink', unittest_sink, args: ['--gst-plugin-path=../'])
@@ -44,7 +40,6 @@ if gtest_dep.found()
   # Run unittest_plugins
   unittest_plugins = executable('unittest_plugins',
     'nnstreamer_plugins/unittest_plugins.cpp',
-    cpp_args: nnstreamer_base_args,
     dependencies: [nnstreamer_unittest_deps])
 
   test('unittest_plugins', unittest_plugins, args: ['--gst-plugin-path=../'])
index c18891b..08cfb01 100644 (file)
@@ -2096,7 +2096,7 @@ TEST (test_tensor_aggregator, aggregate_4)
 }
 
 #ifdef HAVE_ORC
-#include "../../gst/tensor_transform/transform-orc.h"
+#include "../../gst/nnstreamer/tensor_transform/transform-orc.h"
 
 /**
  * @brief Test for tensor_transform orc functions (add constant value)