Build plugin if there's build flag
[platform/core/connectivity/uwb-manager.git] / packaging / uwb-manager.spec
1 Name:       uwb-manager
2 Summary:    This is the daemon managing UWB related functionalities
3 Version:    0.0.2
4 Release:    1
5 Group:      Network & Connectivity/Wireless
6 License:    Apache-2.0
7 Source0:    %{name}-%{version}.tar.gz
8
9 BuildRequires:  cmake
10 BuildRequires:  pkgconfig(glib-2.0)
11 BuildRequires:  pkgconfig(gio-2.0)
12 BuildRequires:  pkgconfig(dlog)
13 BuildRequires:  pkgconfig(libtzplatform-config)
14 BuildRequires:  pkgconfig(json-glib-1.0)
15 BuildRequires:  pkgconfig(paho-mqtt-c)
16 %if 0%{?build_plugin:1}
17 BuildRequires:  pkgconfig(dwm1001-host-api)
18 %endif
19 Source1:        dbus-uwb-manager.conf
20 Source2:        org.tizen.uwb.service
21 Source3:        uwb-manager.service
22 Source4:        dwm1001.conf
23
24 Requires(post): /sbin/ldconfig
25 Requires(postun): /sbin/ldconfig
26
27 %description
28 Manager for handling UWB functionalities
29
30 %package -n uwb-manager-tests
31 Summary:    UWB manager tests
32 Group:      Network & Connectivity/Wireless
33 BuildRequires:  pkgconfig(gmock)
34
35 %description -n uwb-manager-tests
36 UWB manager test program
37
38 %if 0%{?build_plugin:1}
39 %package -n uwb-plugin-dwm1001
40 Summary:    UWB plugin for decawave dwm1001
41 Group:      Network & Connectivity/Wireless
42 Requires:   %{name} = %{version}-%{release}
43
44 %description -n uwb-plugin-dwm1001
45 UWB manager plugin for decawave dwm1001 board
46 %endif
47
48 %prep
49 %setup -q
50
51 chmod 644 %{SOURCE0}
52 chmod 644 %{SOURCE1}
53 chmod 644 %{SOURCE2}
54 chmod 644 %{SOURCE3}
55 chmod 644 %{SOURCE4}
56 cp -a %{SOURCE1} ./uwb-manager.conf
57 cp -a %{SOURCE2} .
58 cp -a %{SOURCE3} .
59 cp -a %{SOURCE4} ./uwb-plugin.conf
60
61 %build
62
63 %if 0%{?gcov:1}
64 export CFLAGS+=" -fprofile-arcs -ftest-coverage"
65 export CXXFLAGS+=" -fprofile-arcs -ftest-coverage"
66 export FFLAGS+=" -fprofile-arcs -ftest-coverage"
67 export LDFLAGS+=" -lgcov"
68 %endif
69
70 %cmake . -DCMAKE_INSTALL_PREFIX=%{_prefix} \
71 %if "%{?_lib}" == "lib64"
72         -DTIZEN_ARCH_64=1 \
73 %endif
74         -DLIB_DIR=%{_libdir} \
75         -DBIN_DIR=%{_bindir} \
76         -DTZ_SYS_RO_ETC=%{TZ_SYS_RO_ETC} \
77         -DBUILD_PLUGIN=%{?build_plugin:1}%{!?build_plugin:0}
78
79 make %{?_smp_mflags}
80
81 %install
82
83 %make_install
84
85 mkdir -p %{buildroot}%{_datadir}/dbus-1/system-services/
86 cp org.tizen.uwb.service %{buildroot}%{_datadir}/dbus-1/system-services/
87 mkdir -p %{buildroot}%{_unitdir}
88 cp uwb-manager.service %{buildroot}%{_unitdir}/uwb-manager.service
89 mkdir -p %{buildroot}%{_sysconfdir}/uwb/
90 cp uwb-plugin.conf %{buildroot}%{_sysconfdir}/uwb/
91
92 #DBus DAC
93 mkdir -p %{buildroot}%{_sysconfdir}/dbus-1/system.d
94 cp uwb-manager.conf %{buildroot}%{_sysconfdir}/dbus-1/system.d/uwb-manager.conf
95
96 %post
97
98 %files
99 %manifest %{name}.manifest
100 %license LICENSE
101 %defattr(-,root,root,-)
102 %attr(500,root,root) %{_bindir}/*
103
104 %attr(644,root,root) %{_datadir}/dbus-1/system-services/org.tizen.uwb.service
105 %attr(644,root,root) %{_unitdir}/uwb-manager.service
106 %attr(644,root,root) %{_sysconfdir}/uwb/uwb-plugin.conf
107
108 #DBus DAC
109 %attr(644,root,root) %{_sysconfdir}/dbus-1/system.d/uwb-manager.conf
110
111 %files -n uwb-manager-tests
112 %defattr(-,root,root,-)
113 %{_libdir}/mock_plugin.so
114 %attr(500,root,root) %{_bindir}/%{name}-gtest
115
116 %if 0%{?build_plugin:1}
117 %files -n uwb-plugin-dwm1001
118 %manifest uwb-plugin-dwm1001.manifest
119 %license LICENSE
120 %defattr(-,network_fw,network_fw,-)
121 %{_libdir}/uwb-plugin-dwm1001.so
122 %endif