diff options
| author | Yi Zhao <yi.zhao@windriver.com> | 2019-07-25 16:34:18 +0800 |
|---|---|---|
| committer | Armin Kuster <akuster808@gmail.com> | 2019-08-04 12:17:25 -0700 |
| commit | b9b575823d95ce22833f389e7ff5b37d68f003a1 (patch) | |
| tree | 4b063760200a84f99d04a84b76dc6a37949f5497 /meta-security-compliance | |
| parent | a655c8e4b4b883222c6266788d9a41200d28a9e8 (diff) | |
| download | meta-security-b9b575823d95ce22833f389e7ff5b37d68f003a1.tar.gz | |
openscap: update recipe
* Add PACKAGECONFIG for gcrypt, nss3 and selinux
* Use EXTRA_OECMAKE rather than EXTRA_OECONF
* Set CMAKE_SKIP_RPATH and CMAKE_SKIP_INSTALL_RPATH instead of chrpath
* Remove ptest since there are many host contamination issues on target.
We will add it back when these issues are solved.
* Drop the unused patch
* Add PV
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Diffstat (limited to 'meta-security-compliance')
5 files changed, 30 insertions, 71 deletions
diff --git a/meta-security-compliance/recipes-openscap/openscap/files/probe_dir_fixup.patch b/meta-security-compliance/recipes-openscap/openscap/files/probe_dir_fixup.patch deleted file mode 100644 index ecbe602..0000000 --- a/meta-security-compliance/recipes-openscap/openscap/files/probe_dir_fixup.patch +++ /dev/null | |||
| @@ -1,17 +0,0 @@ | |||
| 1 | Index: git/configure.ac | ||
| 2 | =================================================================== | ||
| 3 | --- git.orig/configure.ac | ||
| 4 | +++ git/configure.ac | ||
| 5 | @@ -1109,11 +1109,7 @@ AC_ARG_WITH([crypto], | ||
| 6 | [], | ||
| 7 | [crypto=gcrypt]) | ||
| 8 | |||
| 9 | -if test "x${libexecdir}" = xNONE; then | ||
| 10 | - probe_dir="/usr/local/libexec/openscap" | ||
| 11 | -else | ||
| 12 | - EXPAND_DIR(probe_dir,"${libexecdir}/openscap") | ||
| 13 | -fi | ||
| 14 | +probe_dir="/usr/local/libexec/openscap" | ||
| 15 | |||
| 16 | AC_SUBST(probe_dir) | ||
| 17 | |||
diff --git a/meta-security-compliance/recipes-openscap/openscap/files/run-ptest b/meta-security-compliance/recipes-openscap/openscap/files/run-ptest deleted file mode 100644 index 454a6a3..0000000 --- a/meta-security-compliance/recipes-openscap/openscap/files/run-ptest +++ /dev/null | |||
| @@ -1,3 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | cd tests | ||
| 3 | make -k check | ||
diff --git a/meta-security-compliance/recipes-openscap/openscap/openscap.inc b/meta-security-compliance/recipes-openscap/openscap/openscap.inc index e5daaf8..f23ea99 100644 --- a/meta-security-compliance/recipes-openscap/openscap/openscap.inc +++ b/meta-security-compliance/recipes-openscap/openscap/openscap.inc | |||
| @@ -6,71 +6,50 @@ HOME_URL = "https://www.open-scap.org/tools/openscap-base/" | |||
| 6 | LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24" | 6 | LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24" |
| 7 | LICENSE = "LGPL-2.1" | 7 | LICENSE = "LGPL-2.1" |
| 8 | 8 | ||
| 9 | DEPENDS = "autoconf-archive dbus acl bzip2 pkgconfig gconf procps curl libxml2 libxslt libcap swig libgcrypt chrpath-replacement-native " | 9 | DEPENDS = "autoconf-archive dbus acl bzip2 pkgconfig gconf procps curl libxml2 libxslt libcap swig" |
| 10 | 10 | DEPENDS_class-native = "autoconf-archive-native pkgconfig-native swig-native curl-native libxml2-native libxslt-native libcap-native dpkg-native" | |
| 11 | DEPENDS_class-native = "autoconf-archive-native pkgconfig-native swig-native curl-native libxml2-native libxslt-native dpkg-native libgcrypt-native nss-native" | ||
| 12 | 11 | ||
| 13 | S = "${WORKDIR}/git" | 12 | S = "${WORKDIR}/git" |
| 14 | 13 | ||
| 15 | inherit cmake pkgconfig python3native perlnative ptest | 14 | inherit cmake pkgconfig python3native perlnative |
| 16 | 15 | ||
| 17 | PACKAGECONFIG ?= "python3 rpm perl" | 16 | PACKAGECONFIG ?= "python3 rpm perl gcrypt ${@bb.utils.contains('DISTRO_FEATURES', 'selinux', 'selinux', '', d)}" |
| 18 | PACKAGECONFIG[python3] = "-DENABLE_PYTHON3=True, , python3, python3" | 17 | PACKAGECONFIG[python3] = "-DENABLE_PYTHON3=ON, ,python3, python3" |
| 19 | PACKAGECONFIG[perl] = "-DENABLE_PERL=True,, perl, perl" | 18 | PACKAGECONFIG[perl] = "-DENABLE_PERL=ON, ,perl, perl" |
| 20 | PACKAGECONFIG[rpm] = "-DENABLE_OSCAP_UTIL_AS_RPM=True, ,rpm, rpm" | 19 | PACKAGECONFIG[rpm] = "-DENABLE_OSCAP_UTIL_AS_RPM=ON, ,rpm, rpm" |
| 21 | 20 | PACKAGECONFIG[gcrypt] = "-DWITH_CRYPTO=gcrypt, ,libgcrypt" | |
| 22 | EXTRA_OECONF += "-DENABLE_PROBES_INDEPENDENT=yes -DENABLE_PROBES_LINUX=yes -DWITH_CRYPTO=gcrypt\ | 21 | PACKAGECONFIG[nss3] = "-DWITH_CRYPTO=nss3, ,nss" |
| 23 | -DENABLE_PROBES_SOLARIS=yes -DENABLE_PROBES_UNIX=yes -DENABLE_TESTS=no \ | 22 | PACKAGECONFIG[selinux] = ", ,libselinux" |
| 24 | -DENABLE_OSCAP_UTIL_SSH=yes -DENABLE_OSCAP_UTIL=yes -DENABLE_SCE=yes \ | 23 | |
| 25 | -DENABLE_OSCAP_UTIL_DOCKER=no \ | 24 | EXTRA_OECMAKE += "-DENABLE_PROBES_LINUX=ON -DENABLE_PROBES_UNIX=ON \ |
| 26 | " | 25 | -DENABLE_PROBES_SOLARIS=OFF -DENABLE_PROBES_INDEPENDENT=ON \ |
| 27 | 26 | -DENABLE_OSCAP_UTIL=ON -DENABLE_OSCAP_UTIL_SSH=ON \ | |
| 27 | -DENABLE_OSCAP_UTIL_DOCKER=OFF -DENABLE_OSCAP_UTIL_CHROOT=OFF \ | ||
| 28 | -DENABLE_OSCAP_UTIL_PODMAN=OFF -DENABLE_OSCAP_UTIL_VM=OFF \ | ||
| 29 | -DENABLE_PROBES_WINDOWS=OFF -DENABLE_VALGRIND=OFF \ | ||
| 30 | -DENABLE_SCE=ON -DENABLE_MITRE=OFF -DENABLE_TESTS=OFF \ | ||
| 31 | -DCMAKE_SKIP_INSTALL_RPATH=ON -DCMAKE_SKIP_RPATH=ON \ | ||
| 32 | " | ||
| 28 | 33 | ||
| 29 | STAGING_OSCAP_DIR = "${TMPDIR}/work-shared/${MACHINE}/oscap-source" | 34 | STAGING_OSCAP_DIR = "${TMPDIR}/work-shared/${MACHINE}/oscap-source" |
| 30 | STAGING_OSCAP_BUILDDIR = "${TMPDIR}/work-shared/openscap/oscap-build-artifacts" | 35 | STAGING_OSCAP_BUILDDIR = "${TMPDIR}/work-shared/openscap/oscap-build-artifacts" |
| 31 | 36 | ||
| 32 | EXTRANATIVEPATH += "chrpath-native" | ||
| 33 | |||
| 34 | do_configure_append_class-native () { | 37 | do_configure_append_class-native () { |
| 35 | sed -i 's:OSCAP_DEFAULT_CPE_PATH.*$:OSCAP_DEFAULT_CPE_PATH "${STAGING_OSCAP_BUILDDIR}${datadir_native}/openscap/cpe":' ${B}/config.h | 38 | sed -i 's:OSCAP_DEFAULT_CPE_PATH.*$:OSCAP_DEFAULT_CPE_PATH "${STAGING_OSCAP_BUILDDIR}${datadir_native}/openscap/cpe":' ${B}/config.h |
| 36 | sed -i 's:OSCAP_DEFAULT_SCHEMA_PATH.*$:OSCAP_DEFAULT_SCHEMA_PATH "${STAGING_OSCAP_BUILDDIR}${datadir_native}/openscap/schemas":' ${B}/config.h | 39 | sed -i 's:OSCAP_DEFAULT_SCHEMA_PATH.*$:OSCAP_DEFAULT_SCHEMA_PATH "${STAGING_OSCAP_BUILDDIR}${datadir_native}/openscap/schemas":' ${B}/config.h |
| 37 | sed -i 's:OSCAP_DEFAULT_XSLT_PATH.*$:OSCAP_DEFAULT_XSLT_PATH "${STAGING_OSCAP_BUILDDIR}${datadir_native}/openscap/xsl":' ${B}/config.h | 40 | sed -i 's:OSCAP_DEFAULT_XSLT_PATH.*$:OSCAP_DEFAULT_XSLT_PATH "${STAGING_OSCAP_BUILDDIR}${datadir_native}/openscap/xsl":' ${B}/config.h |
| 38 | } | 41 | } |
| 39 | 42 | ||
| 40 | do_clean[cleandirs] += " ${STAGING_OSCAP_BUILDDIR}" | 43 | do_clean[cleandirs] += "${STAGING_OSCAP_BUILDDIR}" |
| 41 | |||
| 42 | do_compile_append_class-target() { | ||
| 43 | sed -i -e 's:${STAGING_BINDIR_NATIVE}/python3-native/python3:${bindir}/python3:' ${B}/utils/oscap-docker | ||
| 44 | } | ||
| 45 | 44 | ||
| 46 | do_install_append_class-native () { | 45 | do_install_append_class-native () { |
| 47 | oscapdir=${STAGING_OSCAP_BUILDDIR}/${datadir_native} | 46 | oscapdir=${STAGING_OSCAP_BUILDDIR}/${datadir_native} |
| 48 | install -d $oscapdir | 47 | install -d $oscapdir |
| 49 | cp -a ${D}/${STAGING_DATADIR_NATIVE}/openscap $oscapdir | 48 | cp -a ${D}/${STAGING_DATADIR_NATIVE}/openscap $oscapdir |
| 50 | } | 49 | } |
| 51 | 50 | ||
| 52 | TESTDIR = "tests" | ||
| 53 | |||
| 54 | do_compile_ptest() { | ||
| 55 | oe-runcmake ${TESTDIR} | ||
| 56 | } | ||
| 57 | |||
| 58 | do_install_ptest() { | ||
| 59 | # install the tests | ||
| 60 | cp -rf ${B}/${TESTDIR} ${D}${PTEST_PATH} | ||
| 61 | } | ||
| 62 | |||
| 63 | do_fixup_rpath() { | ||
| 64 | chrpath -d ${D}${libdir}/libopenscap.so.25.0.1 | ||
| 65 | chrpath -d ${D}${libdir}/libopenscap_sce.so.25.0.1 | ||
| 66 | chrpath -d ${D}${bindir}/oscap | ||
| 67 | } | ||
| 68 | |||
| 69 | addtask fixup_rpath before do_package after do_install | ||
| 70 | |||
| 71 | FILES_${PN} += "${PYTHON_SITEPACKAGES_DIR}" | 51 | FILES_${PN} += "${PYTHON_SITEPACKAGES_DIR}" |
| 72 | 52 | ||
| 73 | RDEPENDS_${PN} += "libxml2 python3 libgcc" | 53 | RDEPENDS_${PN} += "libxml2 python3 libgcc" |
| 74 | RDEPENDS_${PN}-ptest = "bash perl python3-core" | ||
| 75 | 54 | ||
| 76 | BBCLASSEXTEND = "native" | 55 | BBCLASSEXTEND = "native" |
diff --git a/meta-security-compliance/recipes-openscap/openscap/openscap_1.3.1.bb b/meta-security-compliance/recipes-openscap/openscap/openscap_1.3.1.bb index c29fd42..ad29efd 100644 --- a/meta-security-compliance/recipes-openscap/openscap/openscap_1.3.1.bb +++ b/meta-security-compliance/recipes-openscap/openscap/openscap_1.3.1.bb | |||
| @@ -4,7 +4,6 @@ require openscap.inc | |||
| 4 | 4 | ||
| 5 | SRCREV = "3a4c635691380fa990a226acc8558db35d7ebabc" | 5 | SRCREV = "3a4c635691380fa990a226acc8558db35d7ebabc" |
| 6 | SRC_URI = "git://github.com/OpenSCAP/openscap.git;branch=maint-1.3 \ | 6 | SRC_URI = "git://github.com/OpenSCAP/openscap.git;branch=maint-1.3 \ |
| 7 | file://run-ptest \ | ||
| 8 | " | 7 | " |
| 9 | 8 | ||
| 10 | DEFAULT_PREFERENCE = "-1" | 9 | DEFAULT_PREFERENCE = "-1" |
diff --git a/meta-security-compliance/recipes-openscap/openscap/openscap_git.bb b/meta-security-compliance/recipes-openscap/openscap/openscap_git.bb index aded920..963d3de 100644 --- a/meta-security-compliance/recipes-openscap/openscap/openscap_git.bb +++ b/meta-security-compliance/recipes-openscap/openscap/openscap_git.bb | |||
| @@ -7,5 +7,6 @@ include openscap.inc | |||
| 7 | 7 | ||
| 8 | SRCREV = "4bbdb46ff651f809d5b38ca08d769790c4bfff90" | 8 | SRCREV = "4bbdb46ff651f809d5b38ca08d769790c4bfff90" |
| 9 | SRC_URI = "git://github.com/akuster/openscap.git;branch=oe-1.3 \ | 9 | SRC_URI = "git://github.com/akuster/openscap.git;branch=oe-1.3 \ |
| 10 | file://run-ptest \ | ||
| 11 | " | 10 | " |
| 11 | |||
| 12 | PV = "1.3.1+git${SRCPV}" | ||
