643863c5f2ed5e01800e7fd737b6f9ad0e6fc999
[platform/core/system/sensord.git] / packaging / sensord.spec
1 Name:       sensord
2 Summary:    Sensor daemon
3 Version:    4.0.54
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)
17 BuildRequires:  pkgconfig(libsyscommon)
18 BuildRequires:  pkgconfig(libtzplatform-config)
19 BuildRequires:  pkgconfig(cynara-creds-socket)
20 BuildRequires:  pkgconfig(cynara-client)
21 BuildRequires:  pkgconfig(cynara-session)
22 BuildRequires:  pkgconfig(hal-api-sensor)
23 BuildRequires:  pkgconfig(hal-api-common)
24
25 Requires:   %{name}-dummy = %{version}-%{release}
26 Provides:   %{name}-profile_mobile = %{version}-%{release}
27 Provides:   %{name}-profile_wearable = %{version}-%{release}
28 Provides:   %{name}-profile_ivi = %{version}-%{release}
29 Provides:   %{name}-profile_common = %{version}-%{release}
30 %global __provides_exclude ^.*-genuine\\.so.*$
31
32 %description
33 This package provides the fully functional internal API library and the service daemon
34 of the Sensor Framework. The library replaces the dummy library installed by %{name}-dummy.
35
36
37 %package    dummy
38 Summary:    Sensor Framework 'dummy' library
39 Provides:   %{name}-profile_tv = %{version}-%{release}
40 # To support old-snapshot-based package builds
41 Provides:   libsensor.so.2
42 # For targets which uses only dummy
43 # Prevent to install sensord by providing libsensor.so.<major version>
44 Provides:   libsensor.so.%(echo %{version} | cut -d'.' -f1)
45
46
47 %description dummy
48 This package provides the dummy library of the sensor internal API.
49 Installing %{name} replaces this dummy library with the actually functional library.
50
51
52 %package    devel
53 Summary:    Internal Sensor API (Development)
54 Group:      System/Development
55 Requires:   %{name}-dummy = %{version}-%{release}
56 # To support old-snapshot-based package builds
57 #Provides:   libsensord-devel
58
59 %description devel
60 Internal Sensor API (Development)
61
62 %package -n sensor-test
63 Summary:    Sensord library
64 Group:      System/Testing
65
66 %description -n sensor-test
67 Sensor functional testing
68
69 %prep
70 %setup -q
71
72 %build
73 MAJORVER=`echo %{version} | awk 'BEGIN {FS="."}{print $1}'`
74
75 %cmake . -DMAJORVER=${MAJORVER} -DFULLVER=%{version} -DCMAKE_HAL_LIBDIR_PREFIX=%{_hal_libdir}
76 make %{?_smp_mflags}
77
78 %install
79 %make_install
80
81 mkdir -p %{buildroot}%{_unitdir}
82
83 install -m 0644 %SOURCE1 %{buildroot}%{_unitdir}
84 install -m 0644 %SOURCE2 %{buildroot}%{_unitdir}
85
86 mkdir -p %{buildroot}%{_sysconfdir}/sensord
87 install -m 644 conf/auto_rotation.conf   %{buildroot}/etc/sensord/auto_rotation.conf
88
89 %install_service multi-user.target.wants sensord.service
90 %install_service sockets.target.wants sensord.socket
91
92 ln -s libsensor.so.%{version} %{buildroot}/%{_libdir}/libsensor.so.2
93 ln -s libsensor.so.%{version} %{buildroot}/%{_libdir}/libsensor.so.1
94
95 %post
96 pushd %{_libdir}
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.so.%{version}
107 %{_libdir}/libsensord-shared.so
108 %{_libdir}/sensor/fusion/libsensor-fusion.so
109 %{_libdir}/sensor/physical/libsensor-physical.so
110 %{_bindir}/sensord
111 %{_unitdir}/sensord.service
112 %{_unitdir}/sensord.socket
113 %{_unitdir}/multi-user.target.wants/sensord.service
114 %{_unitdir}/sockets.target.wants/sensord.socket
115 %config %{_sysconfdir}/sensord/auto_rotation.conf
116 %license LICENSE.APLv2
117
118
119 %post   dummy
120 pushd %{_libdir}
121 ln -sf libsensor-dummy.so libsensor.so.%{version}
122 chsmack -a "_" libsensor.so.%{version}
123 popd
124 /sbin/ldconfig
125
126 %files  dummy
127 %manifest packaging/sensord.manifest
128 %exclude %{_libdir}/libsensor.so.%{version}
129 %{_libdir}/libsensor.so.*
130 %{_libdir}/libsensor-dummy.so
131 %license LICENSE.APLv2
132
133
134 %files  devel
135 %manifest packaging/sensord.manifest
136 %exclude %{_includedir}/sensor/sensor_hal.h
137 %{_includedir}/sensor/*.h
138 %{_libdir}/libsensor.so
139 %{_libdir}/pkgconfig/sensor.pc
140
141
142 %files -n sensor-test
143 %{_bindir}/sensorctl
144
145
146 # Dummy packages for Tizen 3.0.
147 # When building other packages on Tizen 3.0, after building sensord first,
148 # some dependency conflicts may occur. These dummy packages may fix such
149 # dependency issues.
150 %package -n libsensord
151 Summary:    Dummy libsensord
152 Requires:   sensord-dummy
153 Group:      System/Sensor Framework
154
155 %description -n libsensord
156 Dummy libsensord
157
158 %files -n libsensord
159
160 %package -n libsensord-devel
161 Summary:    Dummy libsensord-devel
162 Requires:   sensord-devel
163 Group:      System/Sensor Framework
164
165 %description -n libsensord-devel
166 Dummy libsensord-devel
167
168 %files -n libsensord-devel