Replace all occurrences of make -j16 by oe_runmake
[scm/bb/meta-tizen.git] / meta-tizen-common-base / recipes-security / security-manager / security-manager.inc
1 DESCRIPTION = "Security manager and utilities"
2 HOMEPAGE = "http://nohomepage.org"
3 SECTION = "Security/Service"
4 LICENSE = "Apache-2.0"
5 PV = "0.2.0"
6
7 SRC_URI = ""
8
9 S = "${WORKDIR}/git"
10
11 inherit manifest autotools-brokensep
12
13 BBCLASSEXTEND = ""
14 PROVIDES = ""
15
16 #PROVIDES by security-manager
17
18
19 #PROVIDES by libsecurity-manager-client
20 PROVIDES += "libsecurity-manager-client"
21
22
23 #PROVIDES by libsecurity-manager-client-dev
24 PROVIDES += "libsecurity-manager-client-dev"
25
26
27 RDEPENDS = ""
28 #RDEPENDS of security-manager (${PN})
29 RDEPENDS_${PN} += "smack"
30 RDEPENDS_${PN} += "systemd"
31
32 #RDEPENDS of libsecurity-manager-client (lib${PN}-client)
33 RDEPENDS_lib${PN}-client += "security-manager"
34 RDEPENDS_lib${PN}-client += "glibc"
35
36 #RDEPENDS of libsecurity-manager-client-dev (lib${PN}-client-dev)
37 RDEPENDS_lib${PN}-client-dev += "libsecurity-manager-client"
38
39
40 DEPENDS = ""
41 #DEPENDS of security-manager
42 DEPENDS += "systemd"
43 inherit tizen_cmake
44 DEPENDS += "attr"
45 DEPENDS += "zip"
46 DEPENDS += "boost"
47 DEPENDS += "tizen-platform-config"
48 inherit pkgconfig
49 DEPENDS += "smack"
50 DEPENDS += "pkgconfig(cynara-client)"
51 DEPENDS += "sqlite3"
52 DEPENDS += "libcap"
53 DEPENDS += "pkgconfig(cynara-admin)"
54 DEPENDS += "libslp-db-util"
55
56 do_prep() {
57  cd ${S}
58  chmod -Rf a+rX,u+w,g-w,o-w ${S}
59  #setup -q
60  cp ${S}/packaging/security-manager.manifest .
61  cp ${S}/packaging/libsecurity-manager-client.manifest .
62  
63  
64 }
65 do_patch_append() {
66     bb.build.exec_func('do_prep', d)
67 }
68
69 do_configure() {
70 }
71
72 do_compile() {
73  cd ${S}
74  LANG=C
75  export LANG
76  unset DISPLAY
77  LD_AS_NEEDED=1; export LD_AS_NEEDED ;
78  
79  
80  export LDFLAGS+="-Wl,--rpath=${prefix}/lib"
81  
82  
83    cmake \
84          -DCMAKE_VERBOSE_MAKEFILE=ON \
85          -DCMAKE_INSTALL_PREFIX:PATH=${prefix} \
86          -DCMAKE_INSTALL_LIBDIR:PATH=${prefix}/lib \
87          -DINCLUDE_INSTALL_DIR:PATH=${prefix}/include \
88          -DLIB_INSTALL_DIR:PATH=${prefix}/lib \
89          -DSYSCONF_INSTALL_DIR:PATH=${sysconfdir} \
90          -DSHARE_INSTALL_PREFIX:PATH=${prefix}/share \
91          -DCMAKE_SKIP_RPATH:BOOL=ON \
92          -DBUILD_SHARED_LIBS:BOOL=ON \
93          -DCMAKE_TOOLCHAIN_FILE=${WORKDIR}/toolchain.cmake \
94          ${EXTRA_OECMAKE} . -DVERSION=0.2.0 \
95          -DBIN_INSTALL_DIR=${prefix}/bin \
96          -DDB_INSTALL_DIR=${prefix}/dbspace \
97          -DSYSTEMD_INSTALL_DIR=${systemd_unitdir}/system \
98          -DCMAKE_BUILD_TYPE=RELEASE \
99          -DCMAKE_VERBOSE_MAKEFILE=ON
100  oe_runmake
101  
102  
103  
104 }
105
106 do_install() {
107  export RPM_BUILD_ROOT=${D}
108  cd ${S}
109  LANG=C
110  export LANG
111  unset DISPLAY
112  rm -rf ${D}
113  mkdir -p ${D}
114  
115  rm -rf ${D}
116  mkdir -p ${D}/usr/share/license
117  cp LICENSE ${D}/usr/share/license/security-manager
118  cp LICENSE ${D}/usr/share/license/libsecurity-manager-client
119  mkdir -p ${D}/${sysconfdir}/smack
120  cp app-rules-template.smack ${D}/${sysconfdir}/smack
121  
122    oe_runmake \
123          DESTDIR=${D} \
124          INSTALL_ROOT=${D} \
125          BINDIR=${prefix}/bin \
126    install  
127    rm -f ${D}${infodir}/dir 
128    find ${D} -regex ".*\.la$" | xargs rm -f -- 
129    find ${D} -regex ".*\.a$" | xargs rm -f --
130  
131  mkdir -p ${D}/${systemd_unitdir}/system/multi-user.target.wants
132  mkdir -p ${D}/${systemd_unitdir}/system/sockets.target.wants
133  ln -s ../security-manager.service ${D}/${systemd_unitdir}/system/multi-user.target.wants/security-manager.service
134  ln -s ../security-manager.socket ${D}/${systemd_unitdir}/system/sockets.target.wants/security-manager.socket
135  
136  
137 }
138
139 pkg_postinst_libsecurity-manager-client() {
140     #!/bin/sh -e
141
142     [ "x$D" == "x" ] && ldconfig
143 }
144
145 pkg_postinst_${PN}() {
146     #!/bin/sh -e
147
148     [ "x$D" == "x" ] && ldconfig
149     systemctl daemon-reload
150     if [ $1 = 1 ]; then
151         # installation
152         systemctl start security-manager.service
153     fi
154     if [ $1 = 2 ]; then
155         # update
156         systemctl restart security-manager.service
157     fi
158     chsmack -a System $D${prefix}/dbspace/.security-manager.db
159     chsmack -a System $D${prefix}/dbspace/.security-manager.db-journal
160
161 }
162
163 pkg_prerm_${PN}() {
164     #!/bin/sh -e
165
166     if [ $1 = 0 ]; then
167         # unistall
168         systemctl stop security-manager.service
169     fi
170
171 }
172
173 pkg_postrm_libsecurity-manager-client() {
174     #!/bin/sh -e
175
176     [ "x$D" == "x" ] && ldconfig
177 }
178
179 pkg_postrm_${PN}() {
180     #!/bin/sh -e
181
182     [ "x$D" == "x" ] && ldconfig
183     if [ $1 = 0 ]; then
184         # unistall
185         systemctl daemon-reload
186     fi
187
188 }
189
190 PACKAGES = "${PN}-dbg ${PN}-doc ${PN}-locale"
191 PACKAGES += " security-manager "
192 PACKAGES += " libsecurity-manager-client "
193 PACKAGES += " libsecurity-manager-client-dev "
194
195 security-manager_files = ""
196 security-manager_files += "${prefix}/bin/security-manager"
197 security-manager_files += "${prefix}/lib/libsecurity-manager-commons.so.*"
198 security-manager_files += "${systemd_unitdir}/system/multi-user.target.wants/security-manager.service"
199 security-manager_files += "${systemd_unitdir}/system/security-manager.service"
200 security-manager_files += "${systemd_unitdir}/system/security-manager.target"
201 security-manager_files += "${systemd_unitdir}/system/sockets.target.wants/security-manager.socket"
202 security-manager_files += "${systemd_unitdir}/system/security-manager.socket"
203 security-manager_files += "${sysconfdir}/smack/app-rules-template.smack"
204 security-manager_files += "%attr(0600,root,root) ${prefix}/dbspace/.security-manager.db"
205 security-manager_files += "%attr(0600,root,root) ${prefix}/dbspace/.security-manager.db-journal"
206 security-manager_files += "${prefix}/share/license/security-manager"
207 MANIFESTFILES_${PN} = "security-manager.manifest"
208
209 libsecurity-manager-client_files = ""
210 libsecurity-manager-client_files += "${prefix}/lib/libsecurity-manager-client.so.*"
211 libsecurity-manager-client_files += "${prefix}/share/license/libsecurity-manager-client"
212 MANIFESTFILES_lib${PN}-client = "libsecurity-manager-client.manifest"
213
214 libsecurity-manager-client-dev_files = ""
215 libsecurity-manager-client-dev_files += "${prefix}/lib/libsecurity-manager-client.so"
216 libsecurity-manager-client-dev_files += "${prefix}/lib/libsecurity-manager-commons.so"
217 libsecurity-manager-client-dev_files += "${prefix}/include/security-manager/security-manager.h"
218 libsecurity-manager-client-dev_files += "${prefix}/lib/pkgconfig/security-manager.pc"
219 MANIFESTFILES_lib${PN}-client-dev = "security-manager.manifest"
220
221 FILES_${PN} = "${security-manager_files}"
222 FILES_lib${PN}-client = "${libsecurity-manager-client_files}"
223 FILES_lib${PN}-client-dev = "${libsecurity-manager-client-dev_files}"
224
225 PKG_security-manager= "security-manager"
226 PKG_libsecurity-manager-client= "libsecurity-manager-client"
227 PKG_libsecurity-manager-client-dev= "libsecurity-manager-client-dev"
228
229 require security-manager-extraconf.inc
230