diff options
author | Jason M. Bills <jason.m.bills@linux.intel.com> | 2020-12-08 00:38:17 +0300 |
---|---|---|
committer | Jason M. Bills <jason.m.bills@linux.intel.com> | 2020-12-08 00:38:17 +0300 |
commit | 8d6ae7f2a817751fad151168fa10ce28ee0869d8 (patch) | |
tree | 281032f7ec07c41589aa094bd165cc2a98f2d3a7 /meta-openembedded/meta-oe/recipes-extended/minifi-cpp/minifi-cpp_0.7.0.bb | |
parent | c16fb8893b19075db4bcf3b5bf33c1db8c3ca2bd (diff) | |
parent | 5da3c2284560a7e08ffafd03c5b5ba44a3242228 (diff) | |
download | openbmc-8d6ae7f2a817751fad151168fa10ce28ee0869d8.tar.xz |
Merge tag '0.26' of ssh://git-amr-1.devtools.intel.com:29418/openbmc-openbmc into update
Diffstat (limited to 'meta-openembedded/meta-oe/recipes-extended/minifi-cpp/minifi-cpp_0.7.0.bb')
-rw-r--r-- | meta-openembedded/meta-oe/recipes-extended/minifi-cpp/minifi-cpp_0.7.0.bb | 128 |
1 files changed, 128 insertions, 0 deletions
diff --git a/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/minifi-cpp_0.7.0.bb b/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/minifi-cpp_0.7.0.bb new file mode 100644 index 000000000..9113fa67a --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/minifi-cpp_0.7.0.bb @@ -0,0 +1,128 @@ +SUMMARY = "A subproject of Apache NiFi to collect data where it originates." +DESCRIPTION = "MiNiFi--a subproject of Apache NiFi--is a complementary \ +data collection approach that supplements the core tenets of NiFi in dataflow \ +management, focusing on the collection of data at the source of its creation." +HOMEPAGE = "https://nifi.apache.org/minifi/index.html" +SECTION = "console/network" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=f9534eb5f4ab800b573a37bffc62f3a7" + +DEPENDS = "virtual/crypt expat flex python3 bison-native libxml2" +RDEPENDS_${PN} = "python3-core" + +SRCREV = "aa42957a2e227df41510047cece3cd606dc1cb6a" +SRC_URI = "git://github.com/apache/nifi-minifi-cpp.git \ + https://curl.haxx.se/download/curl-7.64.0.tar.bz2;name=curl;subdir=git/thirdparty \ + https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-2.8.3.tar.gz;name=libressl;subdir=git/thirdparty \ + ${DEBIAN_MIRROR}/main/o/ossp-uuid/ossp-uuid_1.6.2.orig.tar.gz;name=ossp-uuid;subdir=git/thirdparty \ + file://fix-minifi-compile.patch \ + file://fix-libressl-compile.patch \ + file://fix-libressl-avoid-BSWAP-assembly-for-ARM-v6.patch \ + file://fix-osspuuid-compile.patch \ + file://fix-osspuuid-cross-compile.patch \ + file://fix-osspuuid-musl-compile.patch \ + file://fix-rocksdb-cross-compile.patch \ + file://remove_const_due_to_std_lock_guard.patch \ + file://0001-Add-lxml2-to-linker-cmdline-of-xml-is-found.patch \ + file://0001-CMakeLists.txt-use-curl-local-source-tarball.patch \ + file://0002-cmake-LibreSSL.cmake-use-libressl-local-source-tarba.patch \ + file://0003-cmake-BundledOSSPUUID.cmake-use-ossp-uuid-local-sour.patch \ + file://minifi.service \ + file://systemd-volatile.conf \ + file://sysvinit-volatile.conf \ + " + +SRC_URI[curl.md5sum] = "d0bcc586873cfef08b4b9594e5395a33" +SRC_URI[curl.sha256sum] = "d573ba1c2d1cf9d8533fadcce480d778417964e8d04ccddcc76e591d544cf2eb" +SRC_URI[libressl.md5sum] = "0f1127bd21b4aa8495a910379c2ad936" +SRC_URI[libressl.sha256sum] = "9b640b13047182761a99ce3e4f000be9687566e0828b4a72709e9e6a3ef98477" +SRC_URI[ossp-uuid.md5sum] = "5db0d43a9022a6ebbbc25337ae28942f" +SRC_URI[ossp-uuid.sha256sum] = "11a615225baa5f8bb686824423f50e4427acd3f70d394765bdff32801f0fd5b0" + +S = "${WORKDIR}/git" + +inherit pkgconfig cmake systemd + +SYSTEMD_PACKAGES = "minifi-cpp" +SYSTEMD_SERVICE_${PN} = "minifi.service" +SYSTEMD_AUTO_ENABLE = "disable" + +OECMAKE_FIND_ROOT_PATH_MODE_PROGRAM = "BOTH" + +EXTRA_OECMAKE += " \ + -DHOST_SYS=${HOST_SYS} -DBUILD_SYS=${BUILD_SYS} \ + -DSKIP_TESTS=ON \ + " +EXTRA_OECMAKE_append_toolchain-clang = " -DCMAKE_RANLIB=${STAGING_BINDIR_TOOLCHAIN}/${TARGET_PREFIX}llvm-ranlib" +LDFLAGS_append_toolchain-clang = " -fuse-ld=lld" +LDFLAGS_remove_riscv32 = "-fuse-ld=lld" + +# There are endian issues when communicating with the x86 nifi on the the mips and the ppc machines. +COMPATIBLE_MACHINE_mips = "(!.*mips).*" +COMPATIBLE_MACHINE_mips64 = "(!.*mips64).*" +COMPATIBLE_MACHINE_powerpc = "(!.*ppc).*" + +TARGET_CFLAGS_append_riscv32 += "-fpic" +TARGET_CXXFLAGS_append_riscv32 += "-fpic" +TARGET_CFLAGS_append_riscv64 += "-fpic" +TARGET_CXXFLAGS_append_riscv64 += "-fpic" + +do_install[cleandirs] += "${WORKDIR}/minifi-install" + +do_install() { + DESTDIR='${WORKDIR}/minifi-install' cmake_runcmake_build --target ${OECMAKE_TARGET_INSTALL} + MINIFI_BIN=${bindir} + MINIFI_HOME=${sysconfdir}/minifi + MINIFI_RUN=${localstatedir}/lib/minifi + MINIFI_LOG=${localstatedir}/log/minifi + + install -d ${D}${MINIFI_BIN} + install -d ${D}${MINIFI_HOME}/conf + install -m 755 -d ${D}${localstatedir}/lib/minifi + cp -a ${WORKDIR}/minifi-install/usr/bin/* ${D}${MINIFI_BIN}/ + cp -a ${WORKDIR}/minifi-install/usr/conf/* ${D}${MINIFI_HOME}/conf/ + + sed -i 's|#appender.rolling.directory=.*|appender.rolling.directory='${MINIFI_LOG}'|g' \ + ${D}${MINIFI_HOME}/conf/minifi-log.properties + sed -i 's|nifi.provenance.repository.directory.default=.*|nifi.provenance.repository.directory.default='${MINIFI_RUN}'/provenance_repository|g' \ + ${D}${MINIFI_HOME}/conf/minifi.properties + sed -i 's|nifi.flowfile.repository.directory.default=.*|nifi.flowfile.repository.directory.default='${MINIFI_RUN}'/flowfile_repository|g' \ + ${D}${MINIFI_HOME}/conf/minifi.properties + sed -i 's|nifi.database.content.repository.directory.default=.*|nifi.database.content.repository.directory.default='${MINIFI_RUN}'/content_repository|g' \ + ${D}${MINIFI_HOME}/conf/minifi.properties + sed -i 's|nifi.flow.configuration.file=.*|nifi.flow.configuration.file='${MINIFI_HOME}'/conf/config.yml|g' \ + ${D}${MINIFI_HOME}/conf/minifi.properties + + sed -i 's|export MINIFI_HOME=.*|export MINIFI_HOME='${MINIFI_HOME}'|g' ${D}${MINIFI_BIN}/minifi.sh + sed -i 's|bin_dir=${MINIFI_HOME}/bin|bin_dir='${MINIFI_BIN}'|g' ${D}${MINIFI_BIN}/minifi.sh + sed -i 's|pid_file=${bin_dir}/.|pid_file='${localstatedir}/run/'|g' ${D}${MINIFI_BIN}/minifi.sh + + if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then + install -d ${D}${sysconfdir}/tmpfiles.d/ + install -m 0644 ${WORKDIR}/systemd-volatile.conf ${D}${sysconfdir}/tmpfiles.d/minifi.conf + install -m 0755 -d ${D}${systemd_unitdir}/system + install -m 0644 ${WORKDIR}/minifi.service ${D}${systemd_unitdir}/system/ + + sed -i 's|@LOCALSTATEDIR@|${localstatedir}|g' ${D}${systemd_unitdir}/system/minifi.service + sed -i 's|@SYSCONFDIR@|${sysconfdir}|g' ${D}${systemd_unitdir}/system/minifi.service + sed -i 's|@BINDIR@|${bindir}|g' ${D}${systemd_unitdir}/system/minifi.service + + sed -i 's|@MINIFI_LOG@|'${MINIFI_LOG}'|g' ${D}${sysconfdir}/tmpfiles.d/minifi.conf + + elif ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then + install -d ${D}${sysconfdir}/default/volatiles + install -m 0644 ${WORKDIR}/sysvinit-volatile.conf ${D}${sysconfdir}/default/volatiles/99_minifi + + sed -i 's|@MINIFI_LOG@|'${MINIFI_LOG}'|g' ${D}${sysconfdir}/default/volatiles/99_minifi + fi +} + +pkg_postinst_${PN}() { + if [ -z "$D" ]; then + if type systemd-tmpfiles >/dev/null; then + systemd-tmpfiles --create + elif [ -e ${sysconfdir}/init.d/populate-volatile.sh ]; then + ${sysconfdir}/init.d/populate-volatile.sh update + fi + fi +} |