From: Kwang Son Date: Mon, 21 Jun 2021 06:11:25 +0000 (+0900) Subject: Add packaging ml_only flag X-Git-Tag: submit/tizen/20210624.045334^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=7a6a8368cfb09be5abe32ed1d0996984c0ec9dfb;p=platform%2Fcore%2Fapi%2Fmediavision.git Add packaging ml_only flag Change-Id: I64a51a7a3b6fda3b3411e7ddee662b415be7a478 Signed-off-by: Kwang Son --- diff --git a/CMakeLists.txt b/CMakeLists.txt index 5370a238..9421c352 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,6 +2,8 @@ set(fw_name "capi-media-vision") project(${fw_name}) cmake_minimum_required(VERSION 2.6) +option(BUILD_ML_ONLY "Build mv_machine_learning only" OFF) + set(MV_COMMON_LIB_NAME "mv_common") set(MV_BARCODE_DETECTOR_LIB_NAME "mv_barcode_detector" CACHE STRING "Name of the library will be built for barcode detecting module (without extension).") @@ -20,19 +22,31 @@ include(FindPkgConfig) include(GNUInstallDirs) add_subdirectory(mv_common) +add_subdirectory(mv_machine_learning) +if(NOT BUILD_ML_ONLY) add_subdirectory(mv_barcode) add_subdirectory(mv_image) add_subdirectory(mv_face) add_subdirectory(mv_surveillance) -add_subdirectory(mv_machine_learning) add_subdirectory(test) +endif() +if(BUILD_ML_ONLY) +install( + DIRECTORY include/ DESTINATION include/media + FILES_MATCHING + PATTERN "*_private.h" EXCLUDE + PATTERN "*_inference*.h" + PATTERN "*_common*.h" + ) +else() install( DIRECTORY include/ DESTINATION include/media FILES_MATCHING PATTERN "*_private.h" EXCLUDE PATTERN "*.h" ) +endif() set(PC_NAME ${fw_name}) set(PC_REQUIRED "${fw_name}-barcode ${fw_name}-face ${fw_name}-image ${fw_name}-surveillance ${fw_name}-inference") @@ -44,7 +58,10 @@ configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/${fw_name}.pc @ONLY ) + +if(NOT BUILD_ML_ONLY) install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${fw_name}.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig) +endif() set(pc_dependents "capi-media-tool") set(PC_NAME ${fw_name}-common) @@ -60,6 +77,7 @@ install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${fw_name}-common.pc DESTINATION ${LIB # now all sub package dependent common set(PC_REQUIRED ${fw_name}-common) +if(NOT BUILD_ML_ONLY) set(PC_NAME ${fw_name}-barcode) set(PC_LDFLAGS "-l${MV_BARCODE_DETECTOR_LIB_NAME} -l${MV_BARCODE_GENERATOR_LIB_NAME} -l${MV_COMMON_LIB_NAME}") configure_file( @@ -95,6 +113,7 @@ configure_file( @ONLY ) install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${fw_name}-surveillance.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig) +endif() set(PC_NAME ${fw_name}-inference) set(PC_LDFLAGS "-l${MV_INFERENCE_LIB_NAME} -l${MV_COMMON_LIB_NAME}") diff --git a/packaging/capi-media-vision.spec b/packaging/capi-media-vision.spec index 17b6db59..c180dfa9 100644 --- a/packaging/capi-media-vision.spec +++ b/packaging/capi-media-vision.spec @@ -1,6 +1,6 @@ Name: capi-media-vision Summary: Media Vision library for Tizen Native API -Version: 0.8.1 +Version: 0.8.2 Release: 0 Group: Multimedia/Framework License: Apache-2.0 and BSD-3-Clause @@ -11,13 +11,16 @@ BuildRequires: pkgconfig(libtbm) BuildRequires: pkgconfig(dlog) BuildRequires: pkgconfig(capi-system-info) BuildRequires: pkgconfig(opencv) -BuildRequires: pkgconfig(zbar) +BuildRequires: pkgconfig(json-glib-1.0) +BuildRequires: dlogutil BuildRequires: pkgconfig(glib-2.0) +BuildRequires: pkgconfig(iniparser) +BuildRequires: pkgconfig(inference-engine-interface-common) +%if !0%{?ml_only:1} +BuildRequires: pkgconfig(zbar) # Change to the pkgconfig(zint) after zint package refactor BuildRequires: zint BuildRequires: zint-devel -BuildRequires: pkgconfig(json-glib-1.0) -BuildRequires: dlogutil BuildRequires: pkgconfig(libavcodec) BuildRequires: pkgconfig(libavformat) BuildRequires: pkgconfig(libswscale) @@ -26,19 +29,22 @@ BuildRequires: pkgconfig(gstreamer-1.0) BuildRequires: pkgconfig(gstreamer-base-1.0) BuildRequires: pkgconfig(gstreamer-app-1.0) BuildRequires: pkgconfig(libtzplatform-config) -BuildRequires: pkgconfig(iniparser) BuildRequires: pkgconfig(ncurses) -BuildRequires: pkgconfig(inference-engine-interface-common) BuildRequires: pkgconfig(check) +%endif + +Requires: %{name}-machine_learning +%if !0%{?ml_only:1} Requires: %{name}-barcode Requires: %{name}-face Requires: %{name}-image -Requires: %{name}-machine_learning Requires: %{name}-surveillance +%endif %description Media Vision library for Tizen Native API. Includes barcode detecting, barcode generating, face and image modules. +%if !0%{?ml_only:1} %package devel Summary: Multimedia Vision Library (DEV) Group: Multimedia/Framework @@ -51,6 +57,7 @@ Requires: %{name}-surveillance-devel %description devel Media Vision library for Tizen Native API (DEV). Includes barcode detecting, barcode generating, face and image modules. +%endif %if 0%{?gcov:1} %package gcov @@ -76,6 +83,7 @@ Requires: %{name}-common %description common-devel Media Vision common library for Tizen Native API (DEV). +%if !0%{?ml_only:1} %package barcode Summary: Multimedia Vision Barcode Library Group: Multimedia/Framework @@ -143,6 +151,7 @@ Requires: %{name}-common-devel %description surveillance-devel Media Vision Surveillance library for Tizen Native API (DEV). +%endif %package machine_learning Summary: Multimedia Vision Machine Learning Library @@ -161,6 +170,7 @@ Requires: %{name}-common-devel %description machine_learning-devel Media Vision Machine Learning library for Tizen Native API (DEV). +%if !0%{?ml_only:1} %package testsuite Summary: Multimedia Vision Test Suite Group: Multimedia/Framework @@ -173,6 +183,7 @@ Requires: check %description testsuite Media Vision Test Suite. +%endif %prep %setup -q @@ -198,6 +209,9 @@ export LDFLAGS+=" -lgcov" %endif %cmake . -DCMAKE_BUILD_TYPE=RelWithDebInfo \ +%if 0%{?ml_only:1} + -DBUILD_ML_ONLY=ON \ +%endif %ifarch %arm aarch64 -DENABLE_NEON=ON %endif @@ -228,8 +242,10 @@ install -m 0644 gcov-obj/* %{buildroot}%{_datadir}/gcov/obj %manifest %{name}.manifest %license LICENSE.APLv2 +%if !0%{?ml_only:1} %files devel %{_libdir}/pkgconfig/%{name}.pc +%endif %files common %manifest %{name}.manifest @@ -241,6 +257,7 @@ install -m 0644 gcov-obj/* %{buildroot}%{_datadir}/gcov/obj %{_includedir}/media/mv_common.h %{_libdir}/pkgconfig/*common.pc +%if !0%{?ml_only:1} %files barcode %manifest %{name}.manifest %license LICENSE.APLv2 @@ -276,6 +293,7 @@ install -m 0644 gcov-obj/* %{buildroot}%{_datadir}/gcov/obj %files surveillance-devel %{_includedir}/media/mv_surveillance*.h %{_libdir}/pkgconfig/*surveillance.pc +%endif %files machine_learning %manifest %{name}.manifest @@ -286,12 +304,14 @@ install -m 0644 gcov-obj/* %{buildroot}%{_datadir}/gcov/obj %{_includedir}/media/mv_infer*.h %{_libdir}/pkgconfig/*inference.pc +%if !0%{?ml_only:1} %files testsuite %manifest %{name}.manifest %license LICENSE.APLv2 %{_libdir}/libmv_*helper.so %{_libdir}/libmv_testsuite*.so %{_bindir}/mv_* +%endif %if 0%{?gcov:1} %files gcov