c4e9a9dff1c3e611baf0b9abab6d7cf331e695b5
[scm/bb/meta-tizen.git] / recipes-tizen / privacy-manager-server / privacy-manager-server.inc
1 DESCRIPTION = "Privacy Management"
2 HOMEPAGE = "http://nohomepage.org"
3 SECTION = "Security/Libraries"
4 LICENSE = "Apache-2.0"
5
6 SRC_URI = ""
7
8 S = "${WORKDIR}/git"
9
10 inherit autotools-brokensep
11
12 BBCLASSEXTEND = ""
13 PROVIDES = ""
14
15 #PROVIDES by privacy-manager-client
16 PROVIDES += "privacy-manager-client"
17
18
19 #PROVIDES by privacy-manager-server
20
21
22 #PROVIDES by privacy-manager-server-dev
23 PROVIDES += "privacy-manager-server-dev"
24
25
26 #PROVIDES by capi-security-privacy-manager
27 PROVIDES += "capi-security-privacy-manager"
28
29
30 #PROVIDES by privacy-manager-client-dev
31 PROVIDES += "privacy-manager-client-dev"
32
33
34 #PROVIDES by capi-security-privacy-manager-dev
35 PROVIDES += "capi-security-privacy-manager-dev"
36
37
38 RDEPENDS = ""
39 #RDEPENDS of privacy-manager-client (privacy-manager-client)
40 RDEPENDS_privacy-manager-client += "privacy-manager-server"
41
42 #RDEPENDS of privacy-manager-server (${PN})
43 RDEPENDS_${PN} += "eglibc"
44
45 #RDEPENDS of privacy-manager-server-dev (${PN}-dev)
46 RDEPENDS_${PN}-dev += "privacy-manager-server"
47
48 #RDEPENDS of capi-security-privacy-manager (capi-security-privacy-manager)
49 RDEPENDS_capi-security-privacy-manager += "privacy-manager-client"
50
51 #RDEPENDS of privacy-manager-client-dev (privacy-manager-client-dev)
52 RDEPENDS_privacy-manager-client-dev += "privacy-manager-client"
53
54 #RDEPENDS of capi-security-privacy-manager-dev (capi-security-privacy-manager-dev)
55 RDEPENDS_capi-security-privacy-manager-dev += "capi-security-privacy-manager"
56
57
58 DEPENDS = ""
59 #DEPENDS of privacy-manager-server
60 DEPENDS += "pkgmgr-info"
61 #Replace "DEPENDS" on gettext by "inherit gettext"
62 inherit gettext
63 inherit tizen_cmake
64 DEPENDS += "capi-system-info"
65 DEPENDS += "libxml2"
66 DEPENDS += "dbus"
67 DEPENDS += "dlog"
68 DEPENDS += "glib-2.0"
69 DEPENDS += "libslp-db-util"
70 DEPENDS += "capi-base-common"
71 DEPENDS += "sqlite3"
72 DEPENDS += "tizen-platform-config"
73 DEPENDS += "dbus-glib"
74
75 do_prep() {
76  cd ${S}
77  chmod -Rf a+rX,u+w,g-w,o-w ${S}
78  #setup -q
79  cp ${S}/packaging/privacy-manager-server.manifest .
80  cp ${S}/packaging/privacy-manager-server-devel.manifest .
81  cp ${S}/packaging/privacy-manager-client.manifest .
82  cp ${S}/packaging/privacy-manager-client-devel.manifest .
83  cp ${S}/packaging/capi-security-privacy-manager.manifest .
84  cp ${S}/packaging/capi-security-privacy-manager-devel.manifest .
85  
86  
87 }
88 do_patch_append() {
89     bb.build.exec_func('do_prep', d)
90 }
91
92 do_configure() {
93 }
94
95 do_compile() {
96  cd ${S}
97  LANG=C
98  export LANG
99  unset DISPLAY
100  LD_AS_NEEDED=1; export LD_AS_NEEDED ;
101  
102  
103  
104    cmake \
105          -DCMAKE_VERBOSE_MAKEFILE=ON \
106          -DCMAKE_INSTALL_PREFIX:PATH=${prefix} \
107          -DCMAKE_INSTALL_LIBDIR:PATH=${prefix}/lib \
108          -DINCLUDE_INSTALL_DIR:PATH=${prefix}/include \
109          -DLIB_INSTALL_DIR:PATH=${prefix}/lib \
110          -DSYSCONF_INSTALL_DIR:PATH=${sysconfdir} \
111          -DSHARE_INSTALL_PREFIX:PATH=${prefix}/share \
112          -DCMAKE_SKIP_RPATH:BOOL=ON \
113          -DBUILD_SHARED_LIBS:BOOL=ON \
114          -DCMAKE_TOOLCHAIN_FILE=${WORKDIR}/toolchain.cmake \
115          ${EXTRA_OECMAKE} . -DPREFIX=${prefix} \
116          -DEXEC_PREFIX=${prefix} \
117          -DLIBDIR=${prefix}/lib \
118          -DINCLUDEDIR=${prefix}/include \
119          -DCMAKE_BUILD_TYPE="Release" \
120          -DVERSION=0.0.4 \
121          -DFILTER_LISTED_PKG=ON \
122          -DPRIVACY_POPUP=OFF
123  make -j16
124  
125  
126  
127 }
128
129 do_install() {
130  export RPM_BUILD_ROOT=${D}
131  cd ${S}
132  LANG=C
133  export LANG
134  unset DISPLAY
135  rm -rf ${D}
136  mkdir -p ${D}
137  
138  mkdir -p ${D}${prefix}/bin
139  cp res/usr/bin/* ${D}${prefix}/bin/
140  mkdir -p ${D}${prefix}/dbspace
141  cp res/opt/dbspace/.privacylist.db /${D}${prefix}/dbspace
142  mkdir -p ${D}${prefix}/share/privacy-manager/
143  cp res/usr/share/privacy-manager/privacy-filter-list.ini ${D}${prefix}/share/privacy-manager/
144  
145  
146    oe_runmake \
147          DESTDIR=${D} \
148          INSTALL_ROOT=${D} \
149          BINDIR=${prefix}/bin \
150    install  
151    rm -f ${D}${infodir}/dir 
152    find ${D} -regex ".*\.la$" | xargs rm -f -- 
153    find ${D} -regex ".*\.a$" | xargs rm -f --
154  
155  mkdir -p ${D}${prefix}/lib/systemd/system/multi-user.target.wants
156  #install -m 0644 ${S}/packaging/privacy-manager-server.service ${D}${prefix}/lib/systemd/system/privacy-manager-server.service
157  #ln -sf /usr/lib/systemd/system/privacy-manager-server.service ${D}${prefix}/lib/systemd/system/multi-user.target.wants/privacy-manager-server.service
158  
159  
160  
161 }
162
163 pkg_postinst_privacy-manager-client() {
164     #!/bin/sh -e
165
166     [ "x$D" == "x" ] && ldconfig
167 }
168
169 pkg_postinst_privacy-manager-server() {
170     #!/bin/sh -e
171
172     [ "x$D" == "x" ] && ldconfig
173     echo "Check privacy DB"
174     if [ ! -f $D${prefix}/dbspace/.privacy.db ]
175     then
176         echo "Create privacy DB"
177         $D${prefix}/bin/privacy_manager_create_clean_db.sh
178     fi
179     chsmack -a 'User' $D${prefix}/dbspace/.privacy.db*
180     chsmack -a 'User' $D${prefix}/dbspace/.privacylist.db*
181
182 }
183
184 pkg_postinst_capi-security-privacy-manager() {
185     #!/bin/sh -e
186
187     [ "x$D" == "x" ] && ldconfig
188 }
189
190 pkg_postrm_${PN}() {
191     #!/bin/sh -e
192
193     [ "x$D" == "x" ] && ldconfig
194 }
195
196 pkg_postrm_capi-security-privacy-manager() {
197     #!/bin/sh -e
198
199     [ "x$D" == "x" ] && ldconfig
200 }
201
202 pkg_postrm_privacy-manager-client() {
203     #!/bin/sh -e
204
205     [ "x$D" == "x" ] && ldconfig
206 }
207
208 PACKAGES = "${PN}-dbg ${PN}-doc ${PN}-locale"
209 PACKAGES += " privacy-manager-client "
210 PACKAGES += " privacy-manager-server "
211 PACKAGES += " privacy-manager-server-dev "
212 PACKAGES += " capi-security-privacy-manager "
213 PACKAGES += " privacy-manager-client-dev "
214 PACKAGES += " capi-security-privacy-manager-dev "
215
216 privacy-manager-client_files = ""
217 privacy-manager-client_files += "${prefix}/lib/libprivacy-manager-client.so*"
218 privacy-manager-client_files += "${prefix}/share/privacy-manager/privacy-filter-list.ini"
219 privacy-manager-client_files += "${sysconfdir}/package-manager/parserlib/libprivileges.so"
220 MANIFESTFILES_privacy-manager-client = "privacy-manager-client.manifest"
221
222 privacy-manager-server_files = ""
223 privacy-manager-server_files += "${prefix}/lib/libprivacy-manager-server.so*"
224 privacy-manager-server_files += "${prefix}/dbspace/.privacylist.db"
225 privacy-manager-server_files += "/usr/bin/*"
226 MANIFESTFILES_${PN} = "privacy-manager-server.manifest"
227
228 privacy-manager-server-dev_files = ""
229 privacy-manager-server-dev_files += "${prefix}/include/privacy_manager/server/privacy_manager_daemon.h"
230 privacy-manager-server-dev_files += "${prefix}/lib/pkgconfig/privacy-manager-server.pc"
231
232 capi-security-privacy-manager_files = ""
233 capi-security-privacy-manager_files += "${prefix}/lib/libcapi-security-privacy-manager.so.*"
234 MANIFESTFILES_capi-security-privacy-manager = "capi-security-privacy-manager.manifest"
235
236 privacy-manager-client-dev_files = ""
237 privacy-manager-client-dev_files += "${prefix}/include/*"
238 privacy-manager-client-dev_files += "${prefix}/lib/pkgconfig/privacy-manager-client.pc"
239 MANIFESTFILES_privacy-manager-client-dev = "privacy-manager-client-devel.manifest"
240
241 capi-security-privacy-manager-dev_files = ""
242 capi-security-privacy-manager-dev_files += "${prefix}/include/privacymgr/*.h"
243 capi-security-privacy-manager-dev_files += "${prefix}/lib/libcapi-security-privacy-manager.so"
244 capi-security-privacy-manager-dev_files += "${prefix}/lib/pkgconfig/capi-security-privacy-manager.pc"
245 MANIFESTFILES_capi-security-privacy-manager-dev = "capi-security-privacy-manager-devel.manifest"
246
247 FILES_privacy-manager-client = "${privacy-manager-client_files}"
248 FILES_${PN} = "${privacy-manager-server_files}"
249 FILES_${PN}-dev = "${privacy-manager-server-dev_files}"
250 FILES_capi-security-privacy-manager = "${capi-security-privacy-manager_files}"
251 FILES_privacy-manager-client-dev = "${privacy-manager-client-dev_files}"
252 FILES_capi-security-privacy-manager-dev = "${capi-security-privacy-manager-dev_files}"
253
254 PKG_privacy-manager-client= "privacy-manager-client"
255 PKG_privacy-manager-server= "privacy-manager-server"
256 PKG_privacy-manager-server-dev= "privacy-manager-server-dev"
257 PKG_capi-security-privacy-manager= "capi-security-privacy-manager"
258 PKG_privacy-manager-client-dev= "privacy-manager-client-dev"
259 PKG_capi-security-privacy-manager-dev= "capi-security-privacy-manager-dev"
260
261 require privacy-manager-server-extraconf.inc
262