diff options
Diffstat (limited to 'meta-application-manager/recipes-others/libprivilege-control')
5 files changed, 275 insertions, 0 deletions
diff --git a/meta-application-manager/recipes-others/libprivilege-control/libprivilege-control-extraconf.inc b/meta-application-manager/recipes-others/libprivilege-control/libprivilege-control-extraconf.inc new file mode 100644 index 0000000..ff3f0af --- /dev/null +++ b/meta-application-manager/recipes-others/libprivilege-control/libprivilege-control-extraconf.inc @@ -0,0 +1,9 @@ +do_configure() { + sed -i 's@source /etc/tizen-platform.conf@source ${STAGING_DIR_NATIVE}/etc/tizen-platform.conf@' ${S}/db/updater.sh +} +CFLAGS += " -Wno-implicit-function-declaration" + +DEPENDS_remove_class-native = "dlog-native" + +SRC_URI_append_class-native = " file://remove-dlog-for-native-build.patch" +SRC_URI_append_class-native = " file://missing_header.patch" diff --git a/meta-application-manager/recipes-others/libprivilege-control/libprivilege-control.inc b/meta-application-manager/recipes-others/libprivilege-control/libprivilege-control.inc new file mode 100644 index 0000000..16e206f --- /dev/null +++ b/meta-application-manager/recipes-others/libprivilege-control/libprivilege-control.inc @@ -0,0 +1,176 @@ +DESCRIPTION = "Library to control privilege of application" +HOMEPAGE = "http://nohomepage.org" +SECTION = "Security/Access Control" +LICENSE = "Apache-2.0" +PV = "0.0.43.TIZEN" + +SRC_URI = "" + +S = "${WORKDIR}/git" + +inherit autotools-brokensep + +BBCLASSEXTEND = "" +PROVIDES = "" + +#PROVIDES by libprivilege-control + + +#PROVIDES by libprivilege-control-conf +PROVIDES += "libprivilege-control-conf" + + +#PROVIDES by libprivilege-control-dev +PROVIDES += "libprivilege-control-dev" + + +RDEPENDS = "" +#RDEPENDS of libprivilege-control-conf (${PN}-conf) +RDEPENDS_${PN}-conf += "libprivilege-control" + +#RDEPENDS of libprivilege-control-dev (${PN}-dev) +RDEPENDS_${PN}-dev += "libprivilege-control" + + +DEPENDS = "" +#DEPENDS of libprivilege-control +inherit tizen_cmake +DEPENDS += "tizen-platform-config" +inherit pkgconfig +DEPENDS += "dlog" +DEPENDS += "libiri" +DEPENDS += "smack" +DEPENDS += "sqlite3" +DEPENDS += "libcap" + +do_prep() { + cd ${S} + chmod -Rf a+rX,u+w,g-w,o-w ${S} + #setup -q + cp ${S}/packaging/libprivilege-control.manifest . + + +} +do_patch_append() { + bb.build.exec_func('do_prep', d) +} + +do_configure() { +} + +do_compile() { + cd ${S} + LANG=C + export LANG + unset DISPLAY + LD_AS_NEEDED=1; export LD_AS_NEEDED ; + + + export CFLAGS="${CFLAGS} -Wno-implicit-function-declaration" + + cmake \ + -DCMAKE_VERBOSE_MAKEFILE=ON \ + -DCMAKE_INSTALL_PREFIX:PATH=${prefix} \ + -DCMAKE_INSTALL_LIBDIR:PATH=${prefix}/lib \ + -DINCLUDE_INSTALL_DIR:PATH=${prefix}/include \ + -DLIB_INSTALL_DIR:PATH=${prefix}/lib \ + -DSYSCONF_INSTALL_DIR:PATH=${sysconfdir} \ + -DSHARE_INSTALL_PREFIX:PATH=${prefix}/share \ + -DCMAKE_SKIP_RPATH:BOOL=ON \ + -DBUILD_SHARED_LIBS:BOOL=ON \ + -DCMAKE_TOOLCHAIN_FILE=${WORKDIR}/toolchain.cmake \ + ${EXTRA_OECMAKE} . -DCMAKE_BUILD_TYPE=RELEASE \ + -DCMAKE_VERBOSE_MAKEFILE=ON \ + -DTZ_SYS_DB=${prefix}/dbspace \ + -DTZ_SYS_HOME=/home \ + -DTZ_SYS_ETC=${sysconfdir} \ + -DSYSTEMD_UNIT_DIR=${systemd_unitdir}/system + + VERBOSE=1 oe_runmake ${PARALLEL_MAKE} + + + +} + +do_install() { + export RPM_BUILD_ROOT=${D} + cd ${S} + LANG=C + export LANG + unset DISPLAY + rm -rf ${D} + mkdir -p ${D} + + + oe_runmake \ + DESTDIR=${D} \ + INSTALL_ROOT=${D} \ + BINDIR=${prefix}/bin \ + install + rm -f ${D}${infodir}/dir + find ${D} -regex ".*\.la$" | xargs rm -f -- + find ${D} -regex ".*\.a$" | xargs rm -f -- + mkdir -p ${D}${prefix}/share/privilege-control/ + mkdir -p ${D}${systemd_unitdir}/system/multi-user.target.wants + ln -sf ${systemd_unitdir}/system/smack-rules.service ${D}${systemd_unitdir}/system/multi-user.target.wants/smack-rules.service + mkdir -p ${D}${prefix}/dbspace + sed -i 's|TZ_SYS_DB|${prefix}/dbspace|g' ${S}/packaging/libprivilege-control.manifest + + +} + +pkg_postinst_${PN}() { + #!/bin/sh -e + + [ "x$D" == "x" ] && ldconfig + $D${prefix}/share/privilege-control/db/updater.sh + chsmack -a 'System' $D${prefix}/dbspace/.rules-db.db3* + +} + +pkg_postrm_${PN}() { + #!/bin/sh -e + + [ "x$D" == "x" ] && ldconfig +} + +PACKAGES = "${PN}-dbg ${PN}-doc ${PN}-locale" +PACKAGES += " libprivilege-control " +PACKAGES += " libprivilege-control-conf " +PACKAGES += " libprivilege-control-dev " + +libprivilege-control_files = "" +libprivilege-control_files += "${prefix}/lib/*.so.*" +libprivilege-control_files += "${prefix}/lib/librules-db-sql-udf.so" +libprivilege-control_files += "${systemd_unitdir}/system/smack-rules.service" +libprivilege-control_files += "${prefix}/bin/api_feature_loader" +libprivilege-control_files += "${systemd_unitdir}/system/multi-user.target.wants/smack-rules.service" +libprivilege-control_files += "${prefix}/share/privilege-control/db/rules-db.sql" +libprivilege-control_files += "${prefix}/share/privilege-control/db/rules-db-data.sql" +libprivilege-control_files += "${prefix}/share/privilege-control/db/updater.sh" +libprivilege-control_files += "${prefix}/share/privilege-control/db/updates/*" +libprivilege-control_files += "${prefix}/share/privilege-control/db/load-rules-db.sql" +libprivilege-control_files += "${sysconfdir}/opt/upgrade/220.libprivilege-updater.patch.sh" +libprivilege-control_files += "%dir ${prefix}/dbspace" +MANIFESTFILES_${PN} = "libprivilege-control.manifest" + +libprivilege-control-conf_files = "" +libprivilege-control-conf_files += "${prefix}/dbspace/.privilege_control*.db" +MANIFESTFILES_${PN}-conf = "libprivilege-control.manifest" + +libprivilege-control-dev_files = "" +libprivilege-control-dev_files += "${prefix}/include/*.h" +libprivilege-control-dev_files += "${prefix}/lib/*.so" +libprivilege-control-dev_files += "${prefix}/lib/pkgconfig/*.pc" +MANIFESTFILES_${PN}-dev = "libprivilege-control.manifest" + +FILES_${PN} = "${libprivilege-control_files}" +FILES_${PN}-conf = "${libprivilege-control-conf_files}" +FILES_${PN}-dev = "${libprivilege-control-dev_files}" + +PKG_libprivilege-control= "libprivilege-control" +PKG_libprivilege-control-conf= "libprivilege-control-conf" +PKG_libprivilege-control-dev= "libprivilege-control-dev" + +require libprivilege-control-extraconf.inc + diff --git a/meta-application-manager/recipes-others/libprivilege-control/libprivilege-control/missing_header.patch b/meta-application-manager/recipes-others/libprivilege-control/libprivilege-control/missing_header.patch new file mode 100644 index 0000000..14e8b07 --- /dev/null +++ b/meta-application-manager/recipes-others/libprivilege-control/libprivilege-control/missing_header.patch @@ -0,0 +1,25 @@ +diff --git a/include/common.h b/include/common.h +index 07894d9..f7243fe 100644 +--- a/include/common.h ++++ b/include/common.h +@@ -23,6 +23,7 @@ + #define COMMON_H_ + + #include <stdio.h> ++#include <string.h> + #include <fts.h> + #include <stdbool.h> + #include <sys/smack.h> +diff --git a/src/privilege-control.c b/src/privilege-control.c +index 39cf437..4815262 100644 +--- a/src/privilege-control.c ++++ b/src/privilege-control.c +@@ -38,6 +38,8 @@ + #include <sys/smack.h> + #include <linux/capability.h> + #include <linux/xattr.h> ++#include <attr/xattr.h> ++#include <stdarg.h> + #include <sys/capability.h> + #include <sys/mman.h> + #include <stdbool.h> diff --git a/meta-application-manager/recipes-others/libprivilege-control/libprivilege-control/remove-dlog-for-native-build.patch b/meta-application-manager/recipes-others/libprivilege-control/libprivilege-control/remove-dlog-for-native-build.patch new file mode 100644 index 0000000..12c761e --- /dev/null +++ b/meta-application-manager/recipes-others/libprivilege-control/libprivilege-control/remove-dlog-for-native-build.patch @@ -0,0 +1,55 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index e2d4439..51dd041 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -14,7 +14,7 @@ SET(VERSION "${VERSION_MAJOR}.0.2") + INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include) + + INCLUDE(FindPkgConfig) +-pkg_check_modules(pkgs REQUIRED libsmack libiri dlog sqlite3 libtzplatform-config) ++pkg_check_modules(pkgs REQUIRED libsmack libiri sqlite3 libtzplatform-config) + + FOREACH(flag ${pkgs_CFLAGS}) + SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}") +@@ -25,7 +25,7 @@ ENDFOREACH(flag) + # will be expanded to empty instruction. + + SET(CMAKE_C_FLAGS_CCOV "--coverage") +-SET(CMAKE_C_FLAGS_DEBUG "-O0 -g -ggdb -DDLOG_DEBUG_ENABLED -DTIZEN_DEBUG_ENABLE") ++SET(CMAKE_C_FLAGS_DEBUG "-O0 -g -ggdb -DTIZEN_DEBUG_ENABLE") + SET(CMAKE_C_FLAGS_RELEASE "-O2 -g") + + SET(src_dir "./src") +@@ -39,8 +39,6 @@ ADD_DEFINITIONS("-DHOMEDIR=${HOMEDIR}") + ADD_DEFINITIONS("-DLIBDIR=\"${LIB_INSTALL_DIR}\"") + ADD_DEFINITIONS("-Wall -Werror -Wextra") + +-ADD_DEFINITIONS("-DDLOG_WARN_ENABLED") +-ADD_DEFINITIONS("-DDLOG_ERROR_ENABLED") + + ################################################################################################### + ## for libprivilege-control.so (library) +diff --git a/include/common.h b/include/common.h +index a0bc6ef..07894d9 100644 +--- a/include/common.h ++++ b/include/common.h +@@ -23,7 +23,6 @@ + #define COMMON_H_ + + #include <stdio.h> +-#include <dlog.h> + #include <fts.h> + #include <stdbool.h> + #include <sys/smack.h> +diff --git a/src/access-db.c b/src/access-db.c +index de8bb1b..15123e2 100644 +--- a/src/access-db.c ++++ b/src/access-db.c +@@ -25,7 +25,6 @@ + #include <errno.h> + #include <string.h> + #include <sys/smack.h> +-#include <dlog.h> + #include <ctype.h> + #include <tzplatform_config.h> + diff --git a/meta-application-manager/recipes-others/libprivilege-control/libprivilege-control_git.bb b/meta-application-manager/recipes-others/libprivilege-control/libprivilege-control_git.bb new file mode 100644 index 0000000..73a611c --- /dev/null +++ b/meta-application-manager/recipes-others/libprivilege-control/libprivilege-control_git.bb @@ -0,0 +1,10 @@ +require libprivilege-control.inc + +PRIORITY = "10" + +LIC_FILES_CHKSUM ??= "file://${COMMON_LICENSE_DIR}/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6" + +SRC_URI += "git://review.tizen.org/platform/core/security/libprivilege-control;tag=e613fc4d3632b7cc79187ade3186d1e07ec79170;nobranch=1" + +BBCLASSEXTEND += " native " + |