summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChanggyu Choi <changyu.choi@samsung.com>2022-12-21 15:41:47 +0900
committerChanggyu Choi <changyu.choi@samsung.com>2022-12-21 06:49:35 +0000
commit68933c19e48634795462a2708a97075e6653fc06 (patch)
treec37c9de97289174047038afbcf52969530eebad1
parentb7ec92193bad3c47720e4016e03b934c17fe56b0 (diff)
downloadscreen-connector-68933c19e48634795462a2708a97075e6653fc06.tar.gz
screen-connector-68933c19e48634795462a2708a97075e6653fc06.tar.bz2
screen-connector-68933c19e48634795462a2708a97075e6653fc06.zip
Modify gcov installation directory
Change-Id: I32d5cd0987063a255798a8c259bf430a4eb2a743 Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
-rw-r--r--CMakeLists.txt2
-rw-r--r--packaging/libscreen_connector.spec65
-rw-r--r--test/unittest/CMakeLists.txt2
3 files changed, 50 insertions, 19 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 1534d40..cf8ceca 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -46,7 +46,7 @@ SET(TARGET_SCREEN_CONNECTOR_WATCHER_EVAS
ENABLE_TESTING()
SET(TARGET_SCREEN_CONNECTOR_UNIT_TESTS
- "gtest-screen-connector")
+ "libscreen_connector-unittest")
SET(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH}
"${CMAKE_CURRENT_SOURCE_DIR}/cmake/Modules/")
diff --git a/packaging/libscreen_connector.spec b/packaging/libscreen_connector.spec
index f8374e9..7c04373 100644
--- a/packaging/libscreen_connector.spec
+++ b/packaging/libscreen_connector.spec
@@ -45,6 +45,12 @@ Requires: %{name} = %{version}-%{release}
%description devel
Header and package configuration files for the widget viewer development
+%package unittests
+Summary: %{name} unittests binary
+
+%description unittests
+unittests binary
+
%if 0%{?gcov:1}
%package gcov
Summary: Screen Connector(gcov)
@@ -81,23 +87,47 @@ export LDFLAGS+=" -lgcov"
export CFLAGS+=" -DEFL_BETA_API_SUPPORT"
export CXXFLAGS+=" -DEFL_BETA_API_SUPPORT"
MAJORVER=`echo %{version} | awk 'BEGIN {FS="."}{print $1}'`
-%cmake . -DTZ_SYS_SHARE=/usr/share -DMAJORVER=${MAJORVER} -DFULLVER=%{version}
+%cmake . -DTZ_SYS_SHARE=/usr/share -DMAJORVER=${MAJORVER} -DFULLVER=%{version} -DBIN_INSTALL_DIR:PATH=%{_bindir}
make %{?jobs:-j%jobs}
-%if 0%{?gcov:1}
-mkdir -p gcov-obj
-find . -name '*.gcno' -exec cp '{}' gcov-obj ';'
-%endif
-
%install
rm -rf %{buildroot}
%make_install
%if 0%{?gcov:1}
-mkdir -p %{buildroot}%{_datadir}/gcov/obj/%{name}
-install -m 0644 gcov-obj/* %{buildroot}%{_datadir}/gcov/obj/%{name}
+builddir=$(basename $PWD)
+gcno_obj_dir=%{buildroot}%{_datadir}/gcov/obj/%{name}/"$builddir"
+mkdir -p "$gcno_obj_dir"
+find . -name '*.gcno' -exec cp --parents '{}' "$gcno_obj_dir" ';'
%endif
+cat << EOF > run-unittest.sh
+#!/bin/sh
+setup() {
+ echo "setup start"
+}
+
+test_main() {
+ echo "test_main start"
+ /usr/bin/%{name}-unittest
+}
+
+teardown() {
+ echo "teardown start"
+}
+
+main() {
+ setup
+ test_main
+ teardown
+}
+
+main "\$*"
+EOF
+
+mkdir -p %{buildroot}%{_bindir}/tizen-unittests/%{name}
+install -m 0755 run-unittest.sh %{buildroot}%{_bindir}/tizen-unittests/%{name}/
+
%check
export LD_LIBRARY_PATH=../../screen_connector_remote_surface:../../screen_connector_input
ctest -V
@@ -106,12 +136,12 @@ ctest -V
lcov -c --ignore-errors graph --no-external -q -d . -o screen-connector.info
genhtml screen-connector.info -o screen-connector.out
zip -r screen-connector.zip screen-connector.out
-install -m 0644 screen-connector.zip %{buildroot}%{_datadir}/gcov/
+install -m 0644 screen-connector.zip %{buildroot}%{_datadir}/gcov/obj/
%endif
%if 0%{?gcov:1}
%files gcov
-%{_datadir}/gcov/*
+%{_datadir}/gcov/obj/*
%endif
#################################################
@@ -313,18 +343,19 @@ Provider APIs to develop unittests.
%{_libdir}/pkgconfig/screen_connector_remote_surface_evas_mock.pc
#################################################
-# gtest-screen-connector
+# libscreen_connector-unittest
#################################################
-%package -n gtest-screen-connector
-Summary: GTest for screen-connector
+%package unittest
+Summary: libscreen-connector unittests
Group: Development/Libraries
Requires: %{name}_watcher_evas
-%description -n gtest-screen-connector
-GTest for screen-connector
+%description unittest
+libscreen-connector unittests
-%files -n gtest-screen-connector
-%{_bindir}/gtest-screen-connector
+%files unittest
+%{_bindir}/%{name}-unittest
+%{_bindir}/tizen-unittests/%{name}/run-unittest.sh
#################################################
# libscreen_connector_launcher_service
diff --git a/test/unittest/CMakeLists.txt b/test/unittest/CMakeLists.txt
index 6de38f1..5a9c2d9 100644
--- a/test/unittest/CMakeLists.txt
+++ b/test/unittest/CMakeLists.txt
@@ -26,7 +26,7 @@ APPLY_PKG_CONFIG(${TARGET_SCREEN_CONNECTOR_UNIT_TESTS} PUBLIC
GMOCK_DEPS
)
-INSTALL(TARGETS ${TARGET_SCREEN_CONNECTOR_UNIT_TESTS} DESTINATION bin)
+INSTALL(TARGETS ${TARGET_SCREEN_CONNECTOR_UNIT_TESTS} DESTINATION ${BIN_INSTALL_DIR})
ADD_TEST(NAME ${TARGET_SCREEN_CONNECTOR_UNIT_TESTS}
COMMAND ${TARGET_SCREEN_CONNECTOR_UNIT_TESTS})