f3404046f8c00ddea67580860159b34814edc8ee
[platform/core/system/sensord.git] / packaging / sensord.spec
1 Name:       sensord
2 Summary:    Sensor daemon
3 Version:    2.0.11
4 Release:    1
5 Group:      System/Sensor Framework
6 License:    Apache-2.0
7 Source0:    %{name}-%{version}.tar.gz
8 Source1:    sensord.service
9 Source2:    sensord.socket
10
11 BuildRequires:  cmake
12 BuildRequires:  libattr-devel
13 BuildRequires:  pkgconfig(dlog)
14 BuildRequires:  pkgconfig(glib-2.0)
15 BuildRequires:  pkgconfig(vconf)
16 BuildRequires:  pkgconfig(libsystemd-daemon)
17 BuildRequires:  pkgconfig(cynara-creds-socket)
18 BuildRequires:  pkgconfig(cynara-client)
19 BuildRequires:  pkgconfig(cynara-session)
20
21 Requires:   %{name}-dummy = %{version}-%{release}
22 Provides:   %{name}-profile_mobile = %{version}-%{release}
23 Provides:   %{name}-profile_wearable = %{version}-%{release}
24 Provides:   %{name}-profile_ivi = %{version}-%{release}
25 Provides:   %{name}-profile_common = %{version}-%{release}
26 %global __provides_exclude ^.*-genuine\\.so.*$
27
28 %description
29 This package provides the fully functional internal API library and the service daemon
30 of the Sensor Framework. The library replaces the dummy library installed by %{name}-dummy.
31
32
33 %package    dummy
34 Summary:    Sensor Framework 'dummy' library
35 Provides:   libsensord
36 Provides:   %{name}-profile_tv = %{version}-%{release}
37
38 %description dummy
39 This package provides the dummy library of the sensor internal API.
40 Installing %{name} replaces this dummy library with the actually functional library.
41
42
43 %package    devel
44 Summary:    Internal Sensor API (Development)
45 Group:      System/Development
46 Requires:   %{name}-dummy = %{version}-%{release}
47 Provides:   libsensord-devel
48
49 %description devel
50 Internal Sensor API (Development)
51
52
53 %package -n sensor-hal-devel
54 Summary:    Sensord HAL interface
55 Group:      System/Development
56
57 %description -n sensor-hal-devel
58 Sensord HAL interface
59
60
61 %package -n sensor-test
62 Summary:    Sensord library
63 Group:      System/Testing
64
65 %description -n sensor-test
66 Sensor functional testing
67
68
69 # These dummy packages will be removed later.
70 %package -n libsensord
71 Summary:    Dummy package for backward compatibility
72 Requires:   sensord
73
74 %description -n libsensord
75 A yaml requires libsensord explicitly. This is a temporal solution to prevent image creation failures.
76
77
78 %package -n libsensord-devel
79 Summary:    Dummy package for backward compatibility
80 Requires:   sensord-devel
81
82 %description -n libsensord-devel
83 Some packages require libsensord-devel directly, and it causes local gbs build failures
84 with the old build snapshots. This is a temporal solution to handle such cases.
85
86
87 %prep
88 %setup -q
89
90 %build
91 MAJORVER=`echo %{version} | awk 'BEGIN {FS="."}{print $1}'`
92
93 %cmake . -DMAJORVER=${MAJORVER} -DFULLVER=%{version}
94 make %{?_smp_mflags}
95
96 %install
97 %make_install
98
99 mkdir -p %{buildroot}%{_unitdir}
100
101 install -m 0644 %SOURCE1 %{buildroot}%{_unitdir}
102 install -m 0644 %SOURCE2 %{buildroot}%{_unitdir}
103
104 %install_service multi-user.target.wants sensord.service
105 %install_service sockets.target.wants sensord.socket
106
107 ln -s libsensor.so.2 %{buildroot}%{_libdir}/libsensor.so.1
108
109 %post
110 pushd %{_libdir}
111 ln -sf libsensor-genuine.so.%{version} libsensor.so.%{version}
112 chsmack -a "_" libsensor.so.%{version}
113 popd
114 /sbin/ldconfig
115
116 %preun
117 echo "You need to reinstall %{name}-dummy to keep using the APIs after uninstalling this."
118
119 %files
120 %manifest packaging/sensord.manifest
121 %{_libdir}/libsensor-genuine.so.*
122 %{_libdir}/libsensord-shared.so
123 %{_libdir}/sensor/fusion/libsensor-fusion.so
124 %{_bindir}/sensord
125 %{_unitdir}/sensord.service
126 %{_unitdir}/sensord.socket
127 %{_unitdir}/multi-user.target.wants/sensord.service
128 %{_unitdir}/sockets.target.wants/sensord.socket
129 %license LICENSE.APLv2
130
131
132 %post   dummy
133 /sbin/ldconfig
134
135 %files  dummy
136 %manifest packaging/sensord.manifest
137 %{_libdir}/libsensor.so.*
138 %license LICENSE.APLv2
139
140
141 %files  devel
142 %manifest packaging/sensord.manifest
143 %exclude %{_includedir}/sensor/sensor_hal.h
144 %{_includedir}/sensor/*.h
145 %{_libdir}/libsensor.so
146 %{_libdir}/pkgconfig/sensor.pc
147
148
149 %files -n sensor-hal-devel
150 %manifest packaging/sensord.manifest
151 %{_includedir}/sensor/sensor_hal*.h
152
153
154 %files -n sensor-test
155 %{_bindir}/sensorctl
156
157
158 %files -n libsensord
159
160 %files -n libsensord-devel