1 Name: tpk-manifest-handlers
2 Summary: tpk-manifest-handlers
5 Group: Application Framework/Package Management
7 Source0: %{name}-%{version}.tar.gz
8 Source100: %{name}.manifest
10 BuildRequires: boost-devel
12 BuildRequires: pkgconfig(manifest-parser)
13 BuildRequires: pkgconfig(gmock)
21 Installs tpk parser and handlers based on manifest-parser
24 Summary: Manifest parser development files
25 Group: Application Framework/Package Management
26 Requires: %{name} = %{version}
30 This package contains necessaary files for manifest-parser development
33 Summary: %{name} unittests binary
35 %description unittests
43 export CFLAGS="$(echo $CFLAGS | sed 's/-Wl,--as-needed//g')"
44 export CXXFLAGS="$(echo $CXXFLAGS | sed 's/-Wl,--as-needed//g')"
45 export FFLAGS="$(echo $FFLAGS | sed 's/-Wl,--as-needed//g')"
48 export CFLAGS+=" -fprofile-arcs -ftest-coverage"
49 export CXXFLAGS+=" -fprofile-arcs -ftest-coverage"
50 export FFLAGS=" -fprofile-arcs -ftest-coverage"
51 export LDFLAGS+=" -lgcov"
54 # BUILD_PARSER macro is defined so we can build two separate projects
55 # with cmake, which are on one repository. Later this macro
56 # is used in CMakeLists.txt files to distinguish, which project
57 # is currently being build.
58 MAJORVER=`echo %{version} | awk 'BEGIN {FS="."}{print $1}'`
59 %cmake . -DCMAKE_BUILD_TYPE=%{?build_type:%build_type} \
60 -DTIZEN_VERSION=%{tizen_version} \
61 -DFULLVER=%{version} -DMAJORVER=${MAJORVER}
66 export LD_LIBRARY_PATH=../../src/tpk_manifest_handlers
69 lcov -c --ignore-errors graph --no-external -b . -d . -o %{name}.info
70 genhtml %{name}.info -o out --legend --show-details
77 builddir=$(basename $PWD)
78 gcno_obj_dir=%{buildroot}%{_datadir}/gcov/obj/%{name}/"$builddir"
79 mkdir -p "$gcno_obj_dir"
80 find . -name '*.gcno' -exec cp --parents '{}' "$gcno_obj_dir" ';'
83 cat << EOF > run-unittest.sh
91 echo "test_main start"
94 /usr/bin/tpk-manifest-handlers-unit-test
111 mkdir -p %{buildroot}%{_bindir}/tizen-unittests/%{name}
112 install -m 0755 run-unittest.sh %{buildroot}%{_bindir}/tizen-unittests/%{name}/
114 %post -p /sbin/ldconfig
116 %postun -p /sbin/ldconfig
119 %manifest %{name}.manifest
120 %defattr(-,root,root)
121 %{_libdir}/libtpk-manifest-handlers.so.*
125 %manifest %{name}.manifest
126 %{_libdir}/pkgconfig/*.pc
127 %{_libdir}/libtpk-manifest-handlers.so
128 %{_includedir}/tpk_manifest_handlers/*.h
130 #################################################
131 # tpk-manifest-handlers-gcov
132 #################################################
135 Summary: Simple string key-val dictionary ADT (gcov)
136 Group: Application Framework/Testing
139 Simple string key-val dictionary ADT gcov objects
144 %defattr(-,root,root,-)
145 %{_datadir}/gcov/obj/*
149 %{_bindir}/tpk-manifest-handlers-unit-test
150 %{_bindir}/test_samples
151 %{_bindir}/tizen-unittests/%{name}/run-unittest.sh