[Tizen] Tizen build support after folder restructure
[platform/upstream/iotivity.git] / tools / tizen / iotivity.spec
1 Name: iotivity
2 Version: 1.0.0
3 Release: 0
4 Summary: IoTivity Base Stack & IoTivity Services
5 Group: System Environment/Libraries
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
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(dlog)
20 BuildRequires:  pkgconfig(uuid)
21 BuildRequires:  pkgconfig(capi-network-wifi)
22 BuildRequires:  pkgconfig(capi-network-bluetooth)
23 BuildRequires:  pkgconfig(capi-appfw-app-common)
24 BuildRequires:  pkgconfig(glib-2.0)
25 Requires(postun): /sbin/ldconfig
26 Requires(post): /sbin/ldconfig
27
28 %define release_mode false
29 %define secure_mode 0
30 %define es_target_enrollee tizen
31 %define es_role enrollee
32 %define softap_mode ENROLLEE_SOFTAP 
33
34 %description
35 IoTivity Base (RICH & LITE) Stack & IoTivity Services
36
37 %package service
38 Summary: Development files for %{name}
39 Group: Development/Libraries
40 Requires: %{name} = %{version}-%{release}
41
42 %description service
43 The %{name}-service package contains service libraries files for
44 developing applications that use %{name}-service.
45
46 %package test
47 Summary: Development files for %{name}
48 Group: Development/Libraries
49 Requires: %{name} = %{version}-%{release}
50
51 %description test
52 The %{name}-test package contains example files to show
53 how the iotivity works using %{name}-test
54
55 %package devel
56 Summary: Development files for %{name}
57 Group: Development/Libraries
58 Requires: %{name} = %{version}-%{release}
59 Requires: pkgconfig
60
61 %description devel
62 The %{name}-devel package contains libraries and header files for
63 developing applications that use %{name}.
64
65 %prep
66 %setup -q -n %{name}-%{version}
67 cp %{SOURCE1001} .
68 %if 0%{?tizen_version_major} < 3
69 cp %{SOURCE1002} .
70 %else
71 cp %{SOURCE1001} ./%{name}-test.manifest
72 %endif
73
74 %build
75 %define RPM_ARCH %{_arch}
76
77 %ifarch armv7l armv7hl armv7nhl armv7tnhl armv7thl
78 %define RPM_ARCH "armeabi-v7a"
79 %endif
80
81 %ifarch aarch64
82 %define RPM_ARCH "arm64"
83 %endif
84
85 %ifarch x86_64
86 %define RPM_ARCH "x86_64"
87 %endif
88
89 %ifarch %{ix86}
90 %define RPM_ARCH "x86"
91 %endif
92
93
94 scons -j 4 TARGET_OS=tizen TARGET_ARCH=%{RPM_ARCH} TARGET_TRANSPORT=IP RELEASE=%{release_mode} SECURED=%{secure_mode} ES_TARGET_ENROLLEE=%{es_target_enrollee} ES_ROLE=%{es_role} ES_SOFTAP_MODE=%{softap_mode}
95
96 %install
97 rm -rf %{buildroot}
98 mkdir -p %{buildroot}%{_includedir}
99 mkdir -p %{buildroot}%{_libdir}
100 mkdir -p %{buildroot}%{_bindir}
101
102
103 %if %{release_mode} == "true"
104 %define build_mode release
105 %else
106 %define build_mode debug
107 %endif
108
109 cp out/tizen/*/%{build_mode}/resource/examples/devicediscoveryclient %{buildroot}%{_bindir}
110 cp out/tizen/*/%{build_mode}/resource/examples/devicediscoveryserver %{buildroot}%{_bindir}
111 cp out/tizen/*/%{build_mode}/resource/examples/fridgeclient %{buildroot}%{_bindir}
112 cp out/tizen/*/%{build_mode}/resource/examples/fridgeserver %{buildroot}%{_bindir}
113 cp out/tizen/*/%{build_mode}/resource/examples/garageclient %{buildroot}%{_bindir}
114 cp out/tizen/*/%{build_mode}/resource/examples/garageserver %{buildroot}%{_bindir}
115 cp out/tizen/*/%{build_mode}/resource/examples/groupclient %{buildroot}%{_bindir}
116 cp out/tizen/*/%{build_mode}/resource/examples/groupserver %{buildroot}%{_bindir}
117 cp out/tizen/*/%{build_mode}/resource/examples/lightserver %{buildroot}%{_bindir}
118 cp out/tizen/*/%{build_mode}/resource/examples/presenceclient %{buildroot}%{_bindir}
119 cp out/tizen/*/%{build_mode}/resource/examples/presenceserver %{buildroot}%{_bindir}
120 cp out/tizen/*/%{build_mode}/resource/examples/roomclient %{buildroot}%{_bindir}
121 cp out/tizen/*/%{build_mode}/resource/examples/roomserver %{buildroot}%{_bindir}
122 cp out/tizen/*/%{build_mode}/resource/examples/simpleclient %{buildroot}%{_bindir}
123 cp out/tizen/*/%{build_mode}/resource/examples/simpleclientHQ %{buildroot}%{_bindir}
124 cp out/tizen/*/%{build_mode}/resource/examples/simpleclientserver %{buildroot}%{_bindir}
125 cp out/tizen/*/%{build_mode}/resource/examples/simpleserver %{buildroot}%{_bindir}
126 cp out/tizen/*/%{build_mode}/resource/examples/simpleserverHQ %{buildroot}%{_bindir}
127 cp out/tizen/*/%{build_mode}/resource/examples/threadingsample %{buildroot}%{_bindir}
128 if echo %{secure_mode}|grep -qi '1'; then
129         cp out/tizen/*/%{build_mode}/libocpmapi.a %{buildroot}%{_libdir}
130 fi
131 cp out/tizen/*/%{build_mode}/libcoap.a %{buildroot}%{_libdir}
132 cp out/tizen/*/%{build_mode}/lib*.so %{buildroot}%{_libdir}
133
134 cp resource/csdk/stack/include/*.h %{buildroot}%{_includedir}
135 cp resource/csdk/logger/include/*.h %{buildroot}%{_includedir}
136 cp resource/csdk/ocrandom/include/*.h %{buildroot}%{_includedir}
137 cp -r resource/oc_logger/include/* %{buildroot}%{_includedir}
138 cp resource/include/*.h %{buildroot}%{_includedir}
139
140 cp resource/c_common/*.h %{buildroot}%{_includedir}
141
142 cp service/things-manager/sdk/inc/*.h %{buildroot}%{_includedir}
143 cp service/easy-setup/inc/*.h %{buildroot}%{_includedir}
144 cp service/easy-setup/enrollee/inc/*.h %{buildroot}%{_includedir}
145
146 cp service/things-manager/sdk/inc/*.h %{buildroot}%{_includedir}
147
148 %post -p /sbin/ldconfig
149
150 %postun -p /sbin/ldconfig
151
152 %files
153 %manifest %{name}.manifest
154 %defattr(-,root,root,-)
155 %{_libdir}/liboc.so
156 %{_libdir}/liboc_logger.so
157 %{_libdir}/liboc_logger_core.so
158 %{_libdir}/liboctbstack.so
159 %{_libdir}/libconnectivity_abstraction.so
160 %{_libdir}/lib*.a
161
162 %files service
163 %manifest %{name}.manifest
164 %defattr(-,root,root,-)
165 %{_libdir}/libBMISensorBundle.so
166 %{_libdir}/libDISensorBundle.so
167 %{_libdir}/libresource_hosting.so
168 %{_libdir}/libTGMSDKLibrary.so
169 %{_libdir}/libHueBundle.so
170 %{_libdir}/librcs_client.so
171 %{_libdir}/librcs_common.so
172 %{_libdir}/librcs_container.so
173 %{_libdir}/librcs_server.so
174 %{_libdir}/libESEnrolleeSDK.so
175
176 %files test
177 %manifest %{name}-test.manifest
178 %defattr(-,root,root,-)
179 %{_bindir}/devicediscoveryclient
180 %{_bindir}/devicediscoveryserver
181 %{_bindir}/fridgeclient
182 %{_bindir}/fridgeserver
183 %{_bindir}/garageclient
184 %{_bindir}/garageserver
185 %{_bindir}/groupclient
186 %{_bindir}/groupserver
187 %{_bindir}/lightserver
188 %{_bindir}/presenceclient
189 %{_bindir}/presenceserver
190 %{_bindir}/roomclient
191 %{_bindir}/roomserver
192 %{_bindir}/simpleclient
193 %{_bindir}/simpleclientHQ
194 %{_bindir}/simpleclientserver
195 %{_bindir}/simpleserver
196 %{_bindir}/simpleserverHQ
197 %{_bindir}/threadingsample
198
199 %files devel
200 %defattr(-,root,root,-)
201 %{_includedir}/*