[Tizen 5.0] Sensord: Fix memory leak
[platform/core/system/sensord.git] / packaging / sensord.spec
1 Name:       sensord
2 Summary:    Sensor daemon
3 Version:    4.0.3
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:   %{name}-profile_tv = %{version}-%{release}
36 # To support old-snapshot-based package builds
37 Provides:   libsensor.so.2
38
39 %description dummy
40 This package provides the dummy library of the sensor internal API.
41 Installing %{name} replaces this dummy library with the actually functional library.
42
43
44 %package    devel
45 Summary:    Internal Sensor API (Development)
46 Group:      System/Development
47 Requires:   %{name}-dummy = %{version}-%{release}
48 # To support old-snapshot-based package builds
49 #Provides:   libsensord-devel
50
51 %description devel
52 Internal Sensor API (Development)
53
54
55 %package -n sensor-hal-devel
56 Summary:    Sensord HAL interface
57 Group:      System/Development
58
59 %description -n sensor-hal-devel
60 Sensord HAL interface
61
62
63 %package -n sensor-test
64 Summary:    Sensord library
65 Group:      System/Testing
66
67 %description -n sensor-test
68 Sensor functional testing
69
70
71 %prep
72 %setup -q
73
74 %build
75 MAJORVER=`echo %{version} | awk 'BEGIN {FS="."}{print $1}'`
76
77 %cmake . -DMAJORVER=${MAJORVER} -DFULLVER=%{version}
78 make %{?_smp_mflags}
79
80 %install
81 %make_install
82
83 mkdir -p %{buildroot}%{_unitdir}
84
85 install -m 0644 %SOURCE1 %{buildroot}%{_unitdir}
86 install -m 0644 %SOURCE2 %{buildroot}%{_unitdir}
87
88 %install_service multi-user.target.wants sensord.service
89 %install_service sockets.target.wants sensord.socket
90
91 ln -s libsensor.so.%{version} %{buildroot}/%{_libdir}/libsensor.so.2
92 ln -s libsensor.so.%{version} %{buildroot}/%{_libdir}/libsensor.so.1
93
94 %post
95 pushd %{_libdir}
96 ln -sf libsensor-genuine.so.%{version} libsensor.so.%{version}
97 chsmack -a "_" libsensor.so.%{version}
98 popd
99 /sbin/ldconfig
100
101 %preun
102 echo "You need to reinstall %{name}-dummy to keep using the APIs after uninstalling this."
103
104 %files
105 %manifest packaging/sensord.manifest
106 %{_libdir}/libsensor-genuine.so.*
107 %{_libdir}/libsensord-shared.so
108 %{_libdir}/sensor/fusion/libsensor-fusion.so
109 %{_bindir}/sensord
110 %{_unitdir}/sensord.service
111 %{_unitdir}/sensord.socket
112 %{_unitdir}/multi-user.target.wants/sensord.service
113 %{_unitdir}/sockets.target.wants/sensord.socket
114 %license LICENSE.APLv2
115
116
117 %post   dummy
118 /sbin/ldconfig
119
120 %files  dummy
121 %manifest packaging/sensord.manifest
122 %{_libdir}/libsensor.so.*
123 %license LICENSE.APLv2
124
125
126 %files  devel
127 %manifest packaging/sensord.manifest
128 %exclude %{_includedir}/sensor/sensor_hal.h
129 %{_includedir}/sensor/*.h
130 %{_libdir}/libsensor.so
131 %{_libdir}/pkgconfig/sensor.pc
132
133
134 %files -n sensor-hal-devel
135 %manifest packaging/sensord.manifest
136 %{_includedir}/sensor/sensor_hal*.h
137
138
139 %files -n sensor-test
140 %{_bindir}/sensorctl
141
142
143 # Dummy packages for Tizen 3.0.
144 # When building other packages on Tizen 3.0, after building sensord first,
145 # some dependency conflicts may occur. These dummy packages may fix such
146 # dependency issues.
147 %package -n libsensord
148 Summary:    Dummy libsensord
149 Requires:   sensord-dummy
150 Group:      System/Sensor Framework
151
152 %description -n libsensord
153 Dummy libsensord
154
155 %files -n libsensord
156
157 %package -n libsensord-devel
158 Summary:    Dummy libsensord-devel
159 Requires:   sensord-devel
160 Group:      System/Sensor Framework
161
162 %description -n libsensord-devel
163 Dummy libsensord-devel
164
165 %files -n libsensord-devel