5c3930352e69e55978809cca8b8ed029bf65b218
[platform/upstream/iotivity.git] / packaging / iotivity.spec
1 Name: iotivity
2 Version: 0.9.2
3 Release: 0
4 Summary: IoTivity Base Stack & IoTivity Services
5 Group: Network & Connectivity/Other
6 License: Apache-2.0
7 URL: https://www.iotivity.org/
8 Source0: %{name}-%{version}.tar.bz2
9 Source1001: %{name}.manifest
10 Source1002: %{name}-test.manifest
11 BuildRequires:  gettext, expat-devel
12 BuildRequires:  python, libcurl-devel
13 BuildRequires:  scons
14 BuildRequires:  openssl-devel
15 BuildRequires:  boost-devel
16 BuildRequires:  boost-thread
17 BuildRequires:  boost-system
18 BuildRequires:  boost-filesystem
19 BuildRequires:  pkgconfig(glib-2.0)
20 BuildRequires:  pkgconfig(dlog)
21 BuildRequires:  pkgconfig(uuid)
22 BuildRequires:  pkgconfig(capi-network-wifi)
23 BuildRequires:  pkgconfig(capi-network-bluetooth)
24 BuildRequires:  pkgconfig(capi-appfw-app-common)
25 Requires(postun): /sbin/ldconfig
26 Requires(post): /sbin/ldconfig
27
28 %define release_mode true
29
30 %description
31 IoTivity Base (RICH & LITE) Stack & IoTivity Services
32
33 %package service
34 Summary: Development files for %{name}
35 Group: Network & Connectivity/Service
36 Requires: %{name} = %{version}
37
38 %description service
39 The %{name}-service package contains service libraries files for
40 developing applications that use %{name}-service.
41
42 %package test
43 Summary: Development files for %{name}
44 Group: Network & Connectivity/Testing
45 Requires: %{name} = %{version}
46
47 %description test
48 The %{name}-test package contains example files to show
49 how the iotivity works using %{name}-test
50
51 %package devel
52 Summary: Development files for %{name}
53 Group: Network & Connectivity/Development
54 Requires: %{name} = %{version}
55
56 %description devel
57 The %{name}-devel package contains libraries and header files for
58 developing applications that use %{name}.
59
60 %prep
61 %setup -q -n %{name}-%{version}
62 cp LICENSE.md LICENSE.APLv2
63 cp %{SOURCE1001} .
64 %if 0%{?tizen_version_major} < 3
65 cp %{SOURCE1002} .
66 %else
67 cp %{SOURCE1001} ./%{name}-test.manifest
68 %endif
69
70 %build
71 %define RPM_ARCH %{_arch}
72
73 %ifarch armv7l armv7l armv7hl armv7nhl armv7tnhl armv7thl
74 %define RPM_ARCH "armeabi-v7a"
75 %endif
76
77 %ifarch aarch64
78 %define RPM_ARCH "arm64"
79 %endif
80
81 %ifarch x86_64
82 %define RPM_ARCH "x86_64"
83 %endif
84
85 %ifarch %{ix86}
86 %define RPM_ARCH "x86"
87 %endif
88
89
90 scons -j 4 TARGET_OS=tizen TARGET_ARCH=%{RPM_ARCH} TARGET_TRANSPORT=IP,BT RELEASE=%{release_mode}
91
92 %install
93 rm -rf %{buildroot}
94 mkdir -p %{buildroot}%{_includedir}
95 mkdir -p %{buildroot}%{_libdir}
96 mkdir -p %{buildroot}%{_bindir}
97
98 %if %{release_mode} == "true"
99 %define out_mode release
100 %else
101 %define out_mode debug
102 %endif
103
104 cp out/tizen/*/%{out_mode}/resource/examples/devicediscoveryclient %{buildroot}%{_bindir}
105 cp out/tizen/*/%{out_mode}/resource/examples/devicediscoveryserver %{buildroot}%{_bindir}
106 cp out/tizen/*/%{out_mode}/resource/examples/fridgeclient %{buildroot}%{_bindir}
107 cp out/tizen/*/%{out_mode}/resource/examples/fridgeserver %{buildroot}%{_bindir}
108 cp out/tizen/*/%{out_mode}/resource/examples/garageclient %{buildroot}%{_bindir}
109 cp out/tizen/*/%{out_mode}/resource/examples/garageserver %{buildroot}%{_bindir}
110 cp out/tizen/*/%{out_mode}/resource/examples/groupclient %{buildroot}%{_bindir}
111 cp out/tizen/*/%{out_mode}/resource/examples/groupserver %{buildroot}%{_bindir}
112 cp out/tizen/*/%{out_mode}/resource/examples/lightserver %{buildroot}%{_bindir}
113 cp out/tizen/*/%{out_mode}/resource/examples/presenceclient %{buildroot}%{_bindir}
114 cp out/tizen/*/%{out_mode}/resource/examples/presenceserver %{buildroot}%{_bindir}
115 cp out/tizen/*/%{out_mode}/resource/examples/roomclient %{buildroot}%{_bindir}
116 cp out/tizen/*/%{out_mode}/resource/examples/roomserver %{buildroot}%{_bindir}
117 cp out/tizen/*/%{out_mode}/resource/examples/simpleclient %{buildroot}%{_bindir}
118 cp out/tizen/*/%{out_mode}/resource/examples/simpleclientHQ %{buildroot}%{_bindir}
119 cp out/tizen/*/%{out_mode}/resource/examples/simpleclientserver %{buildroot}%{_bindir}
120 cp out/tizen/*/%{out_mode}/resource/examples/simpleserver %{buildroot}%{_bindir}
121 cp out/tizen/*/%{out_mode}/resource/examples/simpleserverHQ %{buildroot}%{_bindir}
122 cp out/tizen/*/%{out_mode}/resource/examples/threadingsample %{buildroot}%{_bindir}
123 cp out/tizen/*/%{out_mode}/lib*.so %{buildroot}%{_libdir}
124 cp out/tizen/*/%{out_mode}/libSSMSDK.a %{buildroot}%{_libdir}
125 cp out/tizen/*/%{out_mode}/libppm.a %{buildroot}%{_libdir}
126 cp out/tizen/*/%{out_mode}/service/protocol-plugin/plugins/mqtt-fan/*.so %{buildroot}%{_libdir}
127 cp out/tizen/*/%{out_mode}/service/protocol-plugin/plugins/mqtt-light/*.so %{buildroot}%{_libdir}
128
129 cp resource/csdk/stack/include/*.h %{buildroot}%{_includedir}
130 cp resource/csdk/logger/include/*.h %{buildroot}%{_includedir}
131 cp resource/csdk/ocrandom/include/*.h %{buildroot}%{_includedir}
132 cp -r resource/oc_logger/include/* %{buildroot}%{_includedir}
133 cp resource/include/*.h %{buildroot}%{_includedir}
134
135 cp service/things-manager/sdk/inc/*.h %{buildroot}%{_includedir}
136 cp service/soft-sensor-manager/SDK/cpp/include/*.h %{buildroot}%{_includedir}
137 cp service/protocol-plugin/plugin-manager/src/*.h %{buildroot}%{_includedir}
138
139 %if 0%{?tizen_version_major} < 3
140 mkdir -p %{buildroot}/%{_datadir}/license
141 cp LICENSE.APLv2 %{buildroot}/%{_datadir}/license/%{name}
142 cp LICENSE.APLv2 %{buildroot}/%{_datadir}/license/%{name}-service
143 cp LICENSE.APLv2 %{buildroot}/%{_datadir}/license/%{name}-test
144 %endif
145
146 %post -p /sbin/ldconfig
147
148 %postun -p /sbin/ldconfig
149
150 %files
151 %manifest %{name}.manifest
152 %defattr(-,root,root,-)
153 %{_libdir}/liboc.so
154 %{_libdir}/liboc_logger.so
155 %{_libdir}/liboc_logger_core.so
156 %{_libdir}/liboctbstack.so
157 %{_libdir}/libconnectivity_abstraction.so
158 %if 0%{?tizen_version_major} < 3
159 %{_datadir}/license/%{name}
160 %else
161 %license LICENSE.APLv2
162 %endif
163
164 %files service
165 %manifest %{name}.manifest
166 %defattr(-,root,root,-)
167 %{_libdir}/libBMISensor.so
168 %{_libdir}/libDiscomfortIndexSensor.so
169 %{_libdir}/libmosquittopp.so
170 %{_libdir}/libpmimpl.so
171 %{_libdir}/libSSMCore.so
172 %{_libdir}/libTGMSDKLibrary.so
173 %{_libdir}/fanserver*.so
174 %{_libdir}/lightserver*.so
175 %if 0%{?tizen_version_major} < 3
176 %{_datadir}/license/%{name}-service
177 %else
178 %license LICENSE.APLv2
179 %endif
180
181 %files test
182 %manifest %{name}-test.manifest
183 %defattr(-,root,root,-)
184 %{_bindir}/devicediscoveryclient
185 %{_bindir}/devicediscoveryserver
186 %{_bindir}/fridgeclient
187 %{_bindir}/fridgeserver
188 %{_bindir}/garageclient
189 %{_bindir}/garageserver
190 %{_bindir}/groupclient
191 %{_bindir}/groupserver
192 %{_bindir}/lightserver
193 %{_bindir}/presenceclient
194 %{_bindir}/presenceserver
195 %{_bindir}/roomclient
196 %{_bindir}/roomserver
197 %{_bindir}/simpleclient
198 %{_bindir}/simpleclientHQ
199 %{_bindir}/simpleclientserver
200 %{_bindir}/simpleserver
201 %{_bindir}/simpleserverHQ
202 %{_bindir}/threadingsample
203 %if 0%{?tizen_version_major} < 3
204 %{_datadir}/license/%{name}-test
205 %else
206 %license LICENSE.APLv2
207 %endif
208
209 %files devel
210 %defattr(-,root,root,-)
211 %{_libdir}/lib*.a
212 %{_includedir}/*