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