aboutsummaryrefslogtreecommitdiffstats
path: root/meta-security-compliance/recipes-openscap/openscap/openscap_1.2.14.bb
blob: 0d26959ced32a346d4f68d9390050b035eff7c3e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
# Copyright (C) 2017 Armin Kuster  <akuster808@gmail.com>
# Released under the MIT license (see COPYING.MIT for the terms)

SUMARRY = "NIST Certified SCAP 1.2 toolkit"
HOME_URL = "https://www.open-scap.org/tools/openscap-base/"
LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24"
LICENSE = "LGPL-2.1"

DEPENDS = "autoconf-archive pkgconfig gconf procps curl libxml2 rpm \
          libxslt libcap swig swig-native"

DEPENDS_class-native = "autoconf-archive-native pkgconfig-native swig-native curl-native libxml2-native libxslt-native dpkg-native libgcrypt-native nss-native"

SRCREV = "7a924c0eea10d05f512660192c8c4aef447801a6"
SRC_URI = "git://github.com/akuster/openscap.git;branch=oe \
           file://crypto_pkgconfig.patch \
           file://run-ptest \
"

inherit autotools-brokensep pkgconfig python3native perlnative ptest

S = "${WORKDIR}/git"

PACKAGECONFIG ?= "nss3 pcre rpm"
PACKAGECONFIG[pcre] = ",--enable-regex-posix, libpcre"
PACKAGECONFIG[gcrypt] = "--with-crypto=gcrypt,, libgcrypt "
PACKAGECONFIG[nss3] = "--with-crypto=nss3,, nss"
PACKAGECONFIG[python] = "--enable-python, --disable-python, python, python"
PACKAGECONFIG[python3] = "--enable-python3, --disable-python3, python3, python3"
PACKAGECONFIG[perl] = "--enable-perl, --disable-perl, perl, perl"
PACKAGECONFIG[rpm] = " --enable-util-scap-as-rpm, --disable-util-scap-as-rpm, rpm, rpm"

EXTRA_OECONF += "--enable-probes-independent --enable-probes-linux \
		--enable-probes-solaris --enable-probes-unix  --disable-util-oscap-docker\
		--enable-util-oscap-ssh --enable-util-oscap --enable-ssp --enable-sce \
"

EXTRA_OECONF_class-native += "--disable-probes-independent --enable-probes-linux \
		--disable-probes-solaris --disable-probes-unix \
		--enable-util-oscap \
"

do_configure_prepend () {
	sed -i 's:-I/usr/include:-I${STAGING_INCDIR}:' ${S}/swig/perl/Makefile.am
	sed -i 's:-I/usr/include:-I${STAGING_INCDIR}:' ${S}/swig/python3/Makefile.am
	sed -i 's:-I/usr/include:-I${STAGING_INCDIR}:' ${S}/swig/python2/Makefile.am
}


include openscap.inc

do_configure_append_class-native () {
	sed -i 's:OSCAP_DEFAULT_CPE_PATH.*$:OSCAP_DEFAULT_CPE_PATH "${STAGING_OSCAP_BUILDDIR}${datadir_native}/openscap/cpe":' ${S}/config.h
	sed -i 's:OSCAP_DEFAULT_SCHEMA_PATH.*$:OSCAP_DEFAULT_SCHEMA_PATH "${STAGING_OSCAP_BUILDDIR}${datadir_native}/openscap/schemas":' ${S}/config.h
	sed -i 's:OSCAP_DEFAULT_XSLT_PATH.*$:OSCAP_DEFAULT_XSLT_PATH "${STAGING_OSCAP_BUILDDIR}${datadir_native}/openscap/xsl":' ${S}/config.h
}

do_clean[cleandirs] += " ${STAGING_OSCAP_BUILDDIR}"

do_install_append_class-native () {
	oscapdir=${STAGING_OSCAP_BUILDDIR}/${datadir_native}
	install -d $oscapdir	
	cp -a ${D}/${STAGING_DATADIR_NATIVE}/openscap $oscapdir
}

TESTDIR = "tests"

do_compile_ptest() {
    echo 'buildtest-TESTS: $(check)' >> ${TESTDIR}/Makefile
    oe_runmake -C ${TESTDIR} buildtest-TESTS
}

do_install_ptest() {
    # install the tests
    cp -rf ${B}/${TESTDIR} ${D}${PTEST_PATH}
}

FILES_${PN} += "${PYTHON_SITEPACKAGES_DIR}"

RDEPENDS_${PN} += "libxml2 python libgcc"

BBCLASSEXTEND = "native"