diff options
Diffstat (limited to 'meta-oe/recipes-benchmark')
71 files changed, 1776 insertions, 433 deletions
diff --git a/meta-oe/recipes-benchmark/analyze-suspend/analyze-suspend_5.5.bb b/meta-oe/recipes-benchmark/analyze-suspend/analyze-suspend_5.5.bb deleted file mode 100644 index bb0aad3413..0000000000 --- a/meta-oe/recipes-benchmark/analyze-suspend/analyze-suspend_5.5.bb +++ /dev/null @@ -1,29 +0,0 @@ -SUMMARY = "Analyze Suspend" -DESCRIPTION = "analyze-suspend is a tool for system developers to visualize \ -the activity between suspend and resume, allowing them to identify \ -inefficiencies and bottlenecks." -HOMEPAGE = "https://01.org/suspendresume" -LICENSE = "GPLv2" -LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e" - -# Apart from the listed RDEPENDS, analyze-suspend depends on some features -# provided by the kernel. These options are: -# - CONFIG_PM_DEBUG=y -# - CONFIG_PM_SLEEP_DEBUG=y -# - CONFIG_FTRACE=y -# - CONFIG_FUNCTION_TRACER=y -# - CONFIG_FUNCTION_GRAPH_TRACER=y - -RDEPENDS_${PN} += "python-core python-datetime python-stringold" - -SRC_URI = "git://github.com/01org/suspendresume.git;protocol=https" -SRCREV = "cf59527dc24fdd2f314ae4dcaeb3d68a117988f6" - -S = "${WORKDIR}/git" - -do_install() { - install -Dm 0755 analyze_suspend.py ${D}${bindir}/analyze_suspend.py - install -Dm 0644 README ${D}${docdir}/analyze-suspend/README -} - -BBCLASSEXTEND = "native" diff --git a/meta-oe/recipes-benchmark/bonnie/bonnie++/fix-configure-lfs.patch b/meta-oe/recipes-benchmark/bonnie/bonnie++/fix-configure-lfs.patch new file mode 100644 index 0000000000..af20acdcd0 --- /dev/null +++ b/meta-oe/recipes-benchmark/bonnie/bonnie++/fix-configure-lfs.patch @@ -0,0 +1,39 @@ +Upstream-Status: Submitted [https://salsa.debian.org/etbe/bonnie/-/merge_requests/3/diffs?commit_id=4ffece51791ba75ddca2e664cdce726cc40c92d3] + +diff --git i/configure.in w/configure.in +index 080e40c..f2a2bbe 100644 +--- i/configure.in ++++ w/configure.in +@@ -82,8 +82,15 @@ void * thread_func(void * param) { return NULL; } + , thread_ldflags="-lpthread" + , thread_ldflags="-pthread") + +-AC_SUBST(large_file) +-AC_TRY_RUN([#ifndef _LARGEFILE64_SOURCE ++AC_ARG_ENABLE(lfs, ++ [ --disable-lfs disable large file support], ++ LFS_CHOICE=$enableval, LFS_CHOICE=check) ++ ++if test "$LFS_CHOICE" = yes; then ++ bonniepp_cv_large_file=yes ++elif test "$LFS_CHOICE" = check; then ++ AC_CACHE_CHECK([whether to enable -D_LARGEFILE64_SOURCE], bonniepp_cv_large_file, ++ AC_TRY_RUN([#ifndef _LARGEFILE64_SOURCE + #define _LARGEFILE64_SOURCE + #endif + #include <stdio.h> +@@ -118,8 +125,12 @@ int main () { + } + close(fd); + return 0; +-}], large_file="yes") +-if [[ -n "$large_file" ]]; then ++}], bonniepp_cv_large_file="yes")) ++fi ++ ++AC_SUBST(large_file) ++ ++if [[ -n "$bonniepp_cv_large_file" ]]; then + large_file="#define _LARGEFILE64_SOURCE" + fi + diff --git a/meta-oe/recipes-benchmark/bonnie/bonnie++/fix-csv2html-data.patch b/meta-oe/recipes-benchmark/bonnie/bonnie++/fix-csv2html-data.patch new file mode 100644 index 0000000000..4b37b8d654 --- /dev/null +++ b/meta-oe/recipes-benchmark/bonnie/bonnie++/fix-csv2html-data.patch @@ -0,0 +1,183 @@ +commit 7e9433a56f22426b11cbc9bd80e0debca67c893b +Author: Jörg Sommer <joerg.sommer@navimatix.de> +Date: Mon Jun 26 12:38:30 2023 +0200 + + csv2html: Explicitly reference data in top level + + With g++ 11 *data* became ambiguous with [std::data][1]. Therefore it's + needed to explicitly address the variable from the top level scope. + + [1] https://en.cppreference.com/w/cpp/iterator/data + +Upstream-Status: Submitted [https://salsa.debian.org/etbe/bonnie/-/merge_requests/3/diffs?commit_id=fb13a71d56dab8aaa39233fcaaedfb0ba4ad647d] + +diff --git a/bon_csv2html.cpp b/bon_csv2html.cpp +index e9d9c50..652e330 100644 +--- a/bon_csv2html.cpp ++++ b/bon_csv2html.cpp +@@ -87,8 +87,8 @@ int main(int argc, char **argv) + read_in(buf); + } + +- props = new PPCCHAR[data.size()]; +- for(i = 0; i < data.size(); i++) ++ props = new PPCCHAR[::data.size()]; ++ for(i = 0; i < ::data.size(); i++) + { + props[i] = new PCCHAR[MAX_ITEMS]; + props[i][0] = NULL; +@@ -109,7 +109,7 @@ int main(int argc, char **argv) + } + calc_vals(); + int mid_width = header(); +- for(i = 0; i < data.size(); i++) ++ for(i = 0; i < ::data.size(); i++) + { + // First print the average speed line + printf("<tr>"); +@@ -171,23 +171,23 @@ int compar(const void *a, const void *b) + + void calc_vals() + { +- ITEM *arr = new ITEM[data.size()]; ++ ITEM *arr = new ITEM[::data.size()]; + for(unsigned int column_ind = 0; column_ind < MAX_ITEMS; column_ind++) + { + switch(vals[column_ind]) + { + case eNoCols: + { +- for(unsigned int row_ind = 0; row_ind < data.size(); row_ind++) ++ for(unsigned int row_ind = 0; row_ind < ::data.size(); row_ind++) + { + if(column_ind == COL_CONCURRENCY) + { +- if(data[row_ind][column_ind] && strcmp("1", data[row_ind][column_ind])) ++ if(::data[row_ind][column_ind] && strcmp("1", ::data[row_ind][column_ind])) + col_used[column_ind] = true; + } + else + { +- if(data[row_ind][column_ind] && strlen(data[row_ind][column_ind])) ++ if(::data[row_ind][column_ind] && strlen(::data[row_ind][column_ind])) + col_used[column_ind] = true; + } + } +@@ -195,22 +195,22 @@ void calc_vals() + break; + case eCPU: + { +- for(unsigned int row_ind = 0; row_ind < data.size(); row_ind++) ++ for(unsigned int row_ind = 0; row_ind < ::data.size(); row_ind++) + { + double work, cpu; + arr[row_ind].val = 0.0; +- if(data[row_ind].size() > column_ind +- && sscanf(data[row_ind][column_ind - 1], "%lf", &work) == 1 +- && sscanf(data[row_ind][column_ind], "%lf", &cpu) == 1) ++ if(::data[row_ind].size() > column_ind ++ && sscanf(::data[row_ind][column_ind - 1], "%lf", &work) == 1 ++ && sscanf(::data[row_ind][column_ind], "%lf", &cpu) == 1) + { + arr[row_ind].val = cpu / work; + } + arr[row_ind].pos = row_ind; + } +- qsort(arr, data.size(), sizeof(ITEM), compar); ++ qsort(arr, ::data.size(), sizeof(ITEM), compar); + int col_count = -1; + double min_col = -1.0, max_col = -1.0; +- for(unsigned int sort_ind = 0; sort_ind < data.size(); sort_ind++) ++ for(unsigned int sort_ind = 0; sort_ind < ::data.size(); sort_ind++) + { + // if item is different from previous or if the first row + // (sort_ind == 0) then increment col count +@@ -239,7 +239,7 @@ void calc_vals() + min_col /= mult; + } + double range_col = max_col - min_col; +- for(unsigned int sort_ind = 0; sort_ind < data.size(); sort_ind++) ++ for(unsigned int sort_ind = 0; sort_ind < ::data.size(); sort_ind++) + { + if(arr[sort_ind].col_ind > -1) + { +@@ -250,7 +250,7 @@ void calc_vals() + } + else + { +- for(unsigned int sort_ind = 0; sort_ind < data.size(); sort_ind++) ++ for(unsigned int sort_ind = 0; sort_ind < ::data.size(); sort_ind++) + { + if(vals[column_ind] == eLatency) + { +@@ -263,25 +263,25 @@ void calc_vals() + case eSpeed: + case eLatency: + { +- for(unsigned int row_ind = 0; row_ind < data.size(); row_ind++) ++ for(unsigned int row_ind = 0; row_ind < ::data.size(); row_ind++) + { + arr[row_ind].val = 0.0; +- if(data[row_ind].size() <= column_ind +- || sscanf(data[row_ind][column_ind], "%lf", &arr[row_ind].val) == 0) ++ if(::data[row_ind].size() <= column_ind ++ || sscanf(::data[row_ind][column_ind], "%lf", &arr[row_ind].val) == 0) + arr[row_ind].val = 0.0; + if(vals[column_ind] == eLatency && arr[row_ind].val != 0.0) + { +- if(strstr(data[row_ind][column_ind], "ms")) ++ if(strstr(::data[row_ind][column_ind], "ms")) + arr[row_ind].val *= 1000.0; +- else if(!strstr(data[row_ind][column_ind], "us")) ++ else if(!strstr(::data[row_ind][column_ind], "us")) + arr[row_ind].val *= 1000000.0; // is !us && !ms then secs! + } + arr[row_ind].pos = row_ind; + } +- qsort(arr, data.size(), sizeof(ITEM), compar); ++ qsort(arr, ::data.size(), sizeof(ITEM), compar); + int col_count = -1; + double min_col = -1.0, max_col = -1.0; +- for(unsigned int sort_ind = 0; sort_ind < data.size(); sort_ind++) ++ for(unsigned int sort_ind = 0; sort_ind < ::data.size(); sort_ind++) + { + // if item is different from previous or if the first row + // (sort_ind == 0) then increment col count +@@ -310,7 +310,7 @@ void calc_vals() + min_col /= mult; + } + double range_col = max_col - min_col; +- for(unsigned int sort_ind = 0; sort_ind < data.size(); sort_ind++) ++ for(unsigned int sort_ind = 0; sort_ind < ::data.size(); sort_ind++) + { + if(arr[sort_ind].col_ind > -1) + { +@@ -332,7 +332,7 @@ void calc_vals() + } + else + { +- for(unsigned int sort_ind = 0; sort_ind < data.size(); sort_ind++) ++ for(unsigned int sort_ind = 0; sort_ind < ::data.size(); sort_ind++) + { + if(vals[column_ind] == eLatency) + { +@@ -481,16 +481,16 @@ void read_in(CPCCHAR buf) + free((void *)arr[0]); + return; + } +- data.push_back(arr); ++ ::data.push_back(arr); + } + + void print_item(int num, int item, CPCCHAR extra) + { + PCCHAR line_data; + char buf[1024]; +- if(int(data[num].size()) > item) ++ if(int(::data[num].size()) > item) + { +- line_data = data[num][item]; ++ line_data = ::data[num][item]; + switch(item) + { + case COL_PUT_BLOCK: diff --git a/meta-oe/recipes-benchmark/bonnie/bonnie++/makefile-use-link-for-helper.patch b/meta-oe/recipes-benchmark/bonnie/bonnie++/makefile-use-link-for-helper.patch new file mode 100644 index 0000000000..21565977a2 --- /dev/null +++ b/meta-oe/recipes-benchmark/bonnie/bonnie++/makefile-use-link-for-helper.patch @@ -0,0 +1,24 @@ +Upstream-Status: Submitted [https://salsa.debian.org/etbe/bonnie/-/merge_requests/3/diffs?commit_id=f6ce71d9f97316697c55d0fb3c756becdee04c5c] + +diff --git i/Makefile.in w/Makefile.in +index 6dfdb75..87a5fb1 100644 +--- i/Makefile.in ++++ w/Makefile.in +@@ -10,7 +10,7 @@ eprefix=@exec_prefix@ + WFLAGS=-Wall -W -Wshadow -Wpointer-arith -Wwrite-strings -pedantic -ffor-scope -Wcast-align -Wsign-compare -Wpointer-arith -Wwrite-strings -Wformat-security -Wswitch-enum -Winit-self $(MORE_WARNINGS) + CFLAGS=-O2 @debug@ -DNDEBUG $(WFLAGS) $(MORECFLAGS) + CXX=@CXX@ $(CFLAGS) +-LINK=@CXX@ ++LINK=$(LINK.cc) + THREAD_LFLAGS=@thread_ldflags@ + + INSTALL=@INSTALL@ +@@ -43,7 +43,7 @@ getc_putc: $(GETCOBJS) getc_putc_helper + $(LINK) -o getc_putc $(GETCOBJS) $(THREAD_LFLAGS) + + getc_putc_helper: $(GETCHOBJS) +- $(CXX) -o getc_putc_helper $(GETCHOBJS) ++ $(LINK) -o getc_putc_helper $(GETCHOBJS) + + bon_csv2html: bon_csv2html.o + $(LINK) bon_csv2html.o -o bon_csv2html diff --git a/meta-oe/recipes-benchmark/bonnie/bonnie++_1.04.bb b/meta-oe/recipes-benchmark/bonnie/bonnie++_1.04.bb index d7583f0764..c305aadd02 100644 --- a/meta-oe/recipes-benchmark/bonnie/bonnie++_1.04.bb +++ b/meta-oe/recipes-benchmark/bonnie/bonnie++_1.04.bb @@ -1,7 +1,7 @@ SUMMARY = "Tests large file IO and creation/deletion of small files" HOMEPAGE = "http://www.coker.com.au/bonnie++/" SECTION = "benchmark/tests" -LICENSE = "GPLv2" +LICENSE = "GPL-2.0-only" LIC_FILES_CHKSUM = "file://copyright.txt;md5=cd4dde95a6b9d122f0a9150ae9cc3ee0" SRC_URI = "http://www.coker.com.au/bonnie++/${BPN}_${PV}.tgz \ @@ -25,7 +25,7 @@ do_install () { PACKAGES =+ "bonnie-scripts" -FILES_${PN} = "${sbindir}" -FILES_bonnie-scripts = "${bindir}" +FILES:${PN} = "${sbindir}" +FILES:bonnie-scripts = "${bindir}" -RDEPENDS_bonnie-scripts += "perl" +RDEPENDS:bonnie-scripts += "perl" diff --git a/meta-oe/recipes-benchmark/bonnie/bonnie++_2.00a.bb b/meta-oe/recipes-benchmark/bonnie/bonnie++_2.00a.bb new file mode 100644 index 0000000000..29590bfe84 --- /dev/null +++ b/meta-oe/recipes-benchmark/bonnie/bonnie++_2.00a.bb @@ -0,0 +1,33 @@ +SUMMARY = "Tests large file IO and creation/deletion of small files" +HOMEPAGE = "https://doc.coker.com.au/projects/bonnie/" +SECTION = "benchmark/tests" +LICENSE = "GPL-2.0-only" +LIC_FILES_CHKSUM = "file://copyright.txt;md5=cd4dde95a6b9d122f0a9150ae9cc3ee0" + +SRC_URI = "\ + http://www.coker.com.au/bonnie++/${BPN}-${PV}.tgz \ + file://fix-configure-lfs.patch \ + file://fix-csv2html-data.patch \ + file://makefile-use-link-for-helper.patch \ +" +SRC_URI[sha256sum] = "a8d33bbd81bc7eb559ce5bf6e584b9b53faea39ccfb4ae92e58f27257e468f0e" + +# force lfs to skip configure's check, because we are cross-building +PACKAGECONFIG ?= "lfs" +PACKAGECONFIG[lfs] = "--enable-lfs,--disable-lfs" + +inherit autotools + +EXTRA_OECONF += "--disable-stripping" +EXTRA_OEMAKE += "-I ${S} VPATH=${S}" +CXXFLAGS += "-I ${S}" + +do_install() { + oe_runmake eprefix='${D}${exec_prefix}' install-bin +} + +PACKAGE_BEFORE_PN += "${PN}-scripts" + +FILES:${PN}-scripts = "${bindir}/bon_csv2*" + +RDEPENDS:${PN}-scripts += "perl" diff --git a/meta-oe/recipes-benchmark/cpuburn/cpuburn-arm_git.bb b/meta-oe/recipes-benchmark/cpuburn/cpuburn-arm_git.bb index b21212a430..c58524aa64 100644 --- a/meta-oe/recipes-benchmark/cpuburn/cpuburn-arm_git.bb +++ b/meta-oe/recipes-benchmark/cpuburn/cpuburn-arm_git.bb @@ -2,14 +2,14 @@ SUMMARY = "A collection of cpuburn programs tuned for different ARM hardware" LICENSE = "MIT" LIC_FILES_CHKSUM = "file://cpuburn-a53.S;beginline=1;endline=22;md5=3b7ccd70144c16d3fe14ac491c2d4a87" -RPROVIDES_${PN} = "cpuburn-neon" +RPROVIDES:${PN} = "cpuburn-neon" PROVIDES += "cpuburn-neon" SRCREV = "ad7e646700d14b81413297bda02fb7fe96613c3f" -PV = "1.0+git${SRCPV}" +PV = "1.0+git" -SRC_URI = "git://github.com/ssvb/cpuburn-arm.git \ +SRC_URI = "git://github.com/ssvb/cpuburn-arm.git;branch=master;protocol=https \ file://0001-cpuburn-a8.S-Remove-.func-.endfunc.patch \ file://0002-burn.S-Add.patch \ file://0003-burn.S-Remove-.func-.endfunc.patch \ @@ -47,6 +47,6 @@ do_install() { } COMPATIBLE_MACHINE ?= "(^$)" -COMPATIBLE_MACHINE_armv7a = "(.*)" -COMPATIBLE_MACHINE_armv7ve = "(.*)" -COMPATIBLE_MACHINE_aarch64 = "(.*)" +COMPATIBLE_MACHINE:armv7a = "(.*)" +COMPATIBLE_MACHINE:armv7ve = "(.*)" +COMPATIBLE_MACHINE:aarch64 = "(.*)" diff --git a/meta-oe/recipes-benchmark/dbench/dbench_4.0.bb b/meta-oe/recipes-benchmark/dbench/dbench_4.0.bb index fb6a96e64b..32f51fee49 100644 --- a/meta-oe/recipes-benchmark/dbench/dbench_4.0.bb +++ b/meta-oe/recipes-benchmark/dbench/dbench_4.0.bb @@ -1,8 +1,8 @@ SUMMARY = "The dbench (disk) and tbench (TCP) benchmarks" -SUMMARY_dbench = "Filesystem load benchmark" -SUMMARY_tbench = "TCP load benchmark" +SUMMARY:dbench = "Filesystem load benchmark" +SUMMARY:tbench = "TCP load benchmark" HOMEPAGE = "http://samba.org/ftp/tridge/dbench/" -LICENSE = "GPLv3" +LICENSE = "GPL-3.0-only" LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" DEPENDS = "popt" @@ -16,11 +16,11 @@ inherit autotools PACKAGES =+ "tbench" -RPROVIDES_${PN}-dbg += "tbench-dbg" +RPROVIDES:${PN}-dbg += "tbench-dbg" TARGET_CC_ARCH += "${LDFLAGS}" -FILES_tbench = "${bindir}/tbench* ${prefix}/share/client.txt" +FILES:tbench = "${bindir}/tbench* ${prefix}/share/client.txt" SRC_URI[md5sum] = "1fe56ff71b9a416f8889d7150ac54da4" SRC_URI[sha256sum] = "6001893f34e68a3cfeb5d424e1f2bfef005df96a22d86f35dc770c5bccf3aa8a" diff --git a/meta-oe/recipes-benchmark/dhrystone/dhrystone-2.1/dhrystone.patch b/meta-oe/recipes-benchmark/dhrystone/dhrystone-2.1/dhrystone.patch index 6a5350c37c..63e743f64b 100644 --- a/meta-oe/recipes-benchmark/dhrystone/dhrystone-2.1/dhrystone.patch +++ b/meta-oe/recipes-benchmark/dhrystone/dhrystone-2.1/dhrystone.patch @@ -13,7 +13,7 @@ dhrystone sources: Additionally, this patch adds a simple Makefile. -Upstream-status: Pending +Upstream-Status: Pending Sign-off-by: Kimmo Surakka <kimmo.surakka@ge.com> Signed-off-by: Jose Alarcon <jose.alarcon@ge.com> diff --git a/meta-oe/recipes-benchmark/dhrystone/dhrystone_2.1.bb b/meta-oe/recipes-benchmark/dhrystone/dhrystone_2.1.bb index 17e8c700ca..d809a564e9 100644 --- a/meta-oe/recipes-benchmark/dhrystone/dhrystone_2.1.bb +++ b/meta-oe/recipes-benchmark/dhrystone/dhrystone_2.1.bb @@ -22,5 +22,6 @@ do_install() { # Prevent procedure merging as required by dhrystone.c: CFLAGS += "-fno-lto" +CFLAGS:append:toolchain-clang = " -Wno-error=implicit-function-declaration -Wno-error=deprecated-non-prototype -Wno-error=implicit-int" LDFLAGS += "-fno-lto" diff --git a/meta-oe/recipes-benchmark/fio/files/0001-arch-arm-Consider-armv7ve-arch-as-well.patch b/meta-oe/recipes-benchmark/fio/files/0001-arch-arm-Consider-armv7ve-arch-as-well.patch deleted file mode 100644 index 983a76fb6d..0000000000 --- a/meta-oe/recipes-benchmark/fio/files/0001-arch-arm-Consider-armv7ve-arch-as-well.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 2af58909cd9f2862d1dc07836e201361a2cd8d5d Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Sat, 5 Oct 2019 08:53:22 -0700 -Subject: [PATCH] arch-arm: Consider armv7ve arch as well - -Upstream-Status: Submitted [] - -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- - arch/arch-arm.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/arch/arch-arm.h b/arch/arch-arm.h -index 78cb2ebe..4f722967 100644 ---- a/arch/arch-arm.h -+++ b/arch/arch-arm.h -@@ -11,7 +11,7 @@ - #define nop __asm__ __volatile__("mov\tr0,r0\t@ nop\n\t") - #define read_barrier() __asm__ __volatile__ ("" : : : "memory") - #define write_barrier() __asm__ __volatile__ ("" : : : "memory") --#elif defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_8A__) -+#elif defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_8A__) || defined(__ARM_ARCH_7VE__) - #define nop __asm__ __volatile__ ("nop") - #define read_barrier() __sync_synchronize() - #define write_barrier() __sync_synchronize() --- -2.23.0 - diff --git a/meta-oe/recipes-benchmark/fio/files/0001-update-the-interpreter-paths.patch b/meta-oe/recipes-benchmark/fio/files/0001-update-the-interpreter-paths.patch deleted file mode 100644 index 327b9f5b73..0000000000 --- a/meta-oe/recipes-benchmark/fio/files/0001-update-the-interpreter-paths.patch +++ /dev/null @@ -1,94 +0,0 @@ -From 55078e494bdf7da7dd9cb76077fa7ac2a66b6dd6 Mon Sep 17 00:00:00 2001 -From: Mingli Yu <mingli.yu@windriver.com> -Date: Fri, 20 Jul 2018 02:33:25 -0700 -Subject: [PATCH] update the interpreter paths - -Update the interpreter path to make it more -compatible - -Upstream-Status: Pending - -Signed-off-by: Mingli Yu <mingli.yu@windriver.com> ---- - tools/fio_jsonplus_clat2csv | 2 +- - tools/fiologparser.py | 2 +- - tools/genfio | 2 +- - tools/hist/fiologparser_hist.py | 2 +- - tools/hist/half-bins.py | 2 +- - tools/plot/fio2gnuplot | 2 +- - t/steadystate_tests.py | 2 +- - 7 files changed, 7 insertions(+), 7 deletions(-) - -diff --git a/tools/fio_jsonplus_clat2csv b/tools/fio_jsonplus_clat2csv -index 78a007e5..0524b6e6 100755 ---- a/tools/fio_jsonplus_clat2csv -+++ b/tools/fio_jsonplus_clat2csv -@@ -1,4 +1,4 @@ --#!/usr/bin/python2.7 -+#!/usr/bin/env python - # Note: this script is python2 and python3 compatible. - # - # fio_jsonplus_clat2csv -diff --git a/tools/fiologparser.py b/tools/fiologparser.py -index cc29f1c7..ea60e783 100755 ---- a/tools/fiologparser.py -+++ b/tools/fiologparser.py -@@ -1,4 +1,4 @@ --#!/usr/bin/python2.7 -+#!/usr/bin/env python - # Note: this script is python2 and python 3 compatible. - # - # fiologparser.py -diff --git a/tools/genfio b/tools/genfio -index 286d814d..8518bbcc 100755 ---- a/tools/genfio -+++ b/tools/genfio -@@ -1,4 +1,4 @@ --#!/usr/bin/bash -+#!/bin/bash - # - # Copyright (C) 2013 eNovance SAS <licensing@enovance.com> - # Author: Erwan Velu <erwan@enovance.com> -diff --git a/tools/hist/fiologparser_hist.py b/tools/hist/fiologparser_hist.py -index 8910d5fa..b77c2933 100755 ---- a/tools/hist/fiologparser_hist.py -+++ b/tools/hist/fiologparser_hist.py -@@ -1,4 +1,4 @@ --#!/usr/bin/python2.7 -+#!/usr/bin/env python - """ - Utility for converting *_clat_hist* files generated by fio into latency statistics. - -diff --git a/tools/hist/half-bins.py b/tools/hist/half-bins.py -index 1bba8ff7..58d53e36 100755 ---- a/tools/hist/half-bins.py -+++ b/tools/hist/half-bins.py -@@ -1,4 +1,4 @@ --#!/usr/bin/python2.7 -+#!/usr/bin/env python - """ Cut the number bins in half in fio histogram output. Example usage: - - $ half-bins.py -c 2 output_clat_hist.1.log > smaller_clat_hist.1.log -diff --git a/tools/plot/fio2gnuplot b/tools/plot/fio2gnuplot -index 4d1815cf..509141af 100755 ---- a/tools/plot/fio2gnuplot -+++ b/tools/plot/fio2gnuplot -@@ -1,4 +1,4 @@ --#!/usr/bin/python2.7 -+#!/usr/bin/env python - # Note: this script is python2 and python3 compatible. - # - # Copyright (C) 2013 eNovance SAS <licensing@enovance.com> -diff --git a/t/steadystate_tests.py b/t/steadystate_tests.py -index 50254dcc..95e7dfde 100755 ---- a/t/steadystate_tests.py -+++ b/t/steadystate_tests.py -@@ -1,4 +1,4 @@ --#!/usr/bin/python2.7 -+#!/usr/bin/env python - # Note: this script is python2 and python 3 compatible. - # - # steadystate_tests.py --- -2.17.1 - diff --git a/meta-oe/recipes-benchmark/fio/fio_3.16.bb b/meta-oe/recipes-benchmark/fio/fio_3.36.bb index adab618780..a871ed8fe5 100644 --- a/meta-oe/recipes-benchmark/fio/fio_3.16.bb +++ b/meta-oe/recipes-benchmark/fio/fio_3.36.bb @@ -7,25 +7,24 @@ job descriptions in a simple-to-understand text format. Several example job \ files are included. fio displays all sorts of I/O performance information." HOMEPAGE = "http://freecode.com/projects/fio" SECTION = "console/tests" -LICENSE = "GPLv2" +LICENSE = "GPL-2.0-only" LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" DEPENDS = "libaio zlib coreutils-native" -RDEPENDS_${PN} = "python bash" +DEPENDS += "${@bb.utils.contains('MACHINE_FEATURES', 'pmem', 'pmdk', '', d)}" +RDEPENDS:${PN} = "python3-core bash" PACKAGECONFIG_NUMA = "numa" # ARM does not currently support NUMA -PACKAGECONFIG_NUMA_arm = "" -PACKAGECONFIG_NUMA_armeb = "" +PACKAGECONFIG_NUMA:arm = "" +PACKAGECONFIG_NUMA:armeb = "" PACKAGECONFIG ??= "${PACKAGECONFIG_NUMA}" PACKAGECONFIG[numa] = ",--disable-numa,numactl" -SRCREV = "92f75708b530989fdb13b50be6604f44b80d038d" -SRC_URI = "git://git.kernel.dk/fio.git \ - file://0001-update-the-interpreter-paths.patch \ - file://0001-arch-arm-Consider-armv7ve-arch-as-well.patch \ -" +PV .= "+git" +SRCREV = "b2403d413ee734e8835539319d8bc3429a0777ac" +SRC_URI = "git://git.kernel.dk/fio.git;branch=master" S = "${WORKDIR}/git" @@ -33,7 +32,7 @@ S = "${WORKDIR}/git" DISABLE_STATIC = "" EXTRA_OEMAKE = "CC='${CC}' LDFLAGS='${LDFLAGS}'" -EXTRA_OECONF = "--disable-optimizations" +EXTRA_OECONF = "${@bb.utils.contains('MACHINE_FEATURES', 'x86', '--disable-optimizations', '', d)}" do_configure() { ./configure ${EXTRA_OECONF} diff --git a/meta-oe/recipes-benchmark/glmark2/files/0001-fix-dispmanx-build.patch b/meta-oe/recipes-benchmark/glmark2/files/0001-fix-dispmanx-build.patch new file mode 100644 index 0000000000..9d652e10ad --- /dev/null +++ b/meta-oe/recipes-benchmark/glmark2/files/0001-fix-dispmanx-build.patch @@ -0,0 +1,125 @@ +From 56e4959f0bc3e442c813d78e8ab6b3bf64b4ac66 Mon Sep 17 00:00:00 2001 +From: OpenEmbedded <oe.patch@oe> +Date: Wed, 2 Dec 2020 20:27:42 +0000 +Subject: [PATCH] fix dispmanx build + +For when the user is building "--with-flavors dispmanx-glesv2", fixes a bunch +of "redeclared as different kind of symbol" problems. + +This patch is almost entirely from: + https://github.com/glmark2/glmark2/commit/3b1a0f78d03ae126b78ee52a7c434809115e5993 + +Which was created by: Alexandros Frantzis <alexandros.frantzis@collabora.com> + +See: + https://github.com/glmark2/glmark2/issues/80 + +My contribution is to tweak the wscript to link all the required libraries. + +Upstream-Status: Submitted [https://github.com/glmark2/glmark2/pull/135] +Signed-off-by: Trevor Woerner <twoerner@gmail.com> +--- + src/native-state-dispmanx.cpp | 22 +++++++++++++++++----- + src/native-state-dispmanx.h | 7 +++---- + wscript | 2 +- + 3 files changed, 21 insertions(+), 10 deletions(-) + +diff --git a/src/native-state-dispmanx.cpp b/src/native-state-dispmanx.cpp +index 2117386..49f74e7 100644 +--- a/src/native-state-dispmanx.cpp ++++ b/src/native-state-dispmanx.cpp +@@ -23,13 +23,25 @@ + #include "native-state-dispmanx.h" + #include "log.h" + ++#include "EGL/egl.h" ++ + #include <cstring> + #include <csignal> + ++struct NativeStateDispmanx::Private ++{ ++ Private() ++ { ++ memset(&egl_dispmanx_window, 0, sizeof(egl_dispmanx_window)); ++ } ++ ++ EGL_DISPMANX_WINDOW_T egl_dispmanx_window; ++}; ++ + NativeStateDispmanx::NativeStateDispmanx() ++ : priv{std::make_unique<Private>()} + { + memset(&properties_, 0, sizeof(properties_)); +- memset(&egl_dispmanx_window, 0, sizeof(egl_dispmanx_window)); + } + + NativeStateDispmanx::~NativeStateDispmanx() +@@ -99,9 +111,9 @@ NativeStateDispmanx::create_window(WindowProperties const& properties) + 0 /*clamp*/, + DISPMANX_NO_ROTATE); + +- egl_dispmanx_window.element = dispmanx_element; +- egl_dispmanx_window.width = dst_rect.width; +- egl_dispmanx_window.height = dst_rect.height; ++ priv->egl_dispmanx_window.element = dispmanx_element; ++ priv->egl_dispmanx_window.width = dst_rect.width; ++ priv->egl_dispmanx_window.height = dst_rect.height; + vc_dispmanx_update_submit_sync(dispmanx_update); + + return true; +@@ -111,7 +123,7 @@ void* + NativeStateDispmanx::window(WindowProperties &properties) + { + properties = properties_; +- return &egl_dispmanx_window; ++ return &priv->egl_dispmanx_window; + } + + void +diff --git a/src/native-state-dispmanx.h b/src/native-state-dispmanx.h +index a6ed3d4..794b2d3 100644 +--- a/src/native-state-dispmanx.h ++++ b/src/native-state-dispmanx.h +@@ -24,10 +24,8 @@ + #define GLMARK2_NATIVE_STATE_DISPMANX_H_ + + #include <vector> ++#include <memory> + #include "bcm_host.h" +-#include "GLES/gl.h" +-#include "EGL/egl.h" +-#include "EGL/eglext.h" + + #include "native-state.h" + +@@ -46,11 +44,12 @@ public: + void flip(); + + private: ++ struct Private; + DISPMANX_DISPLAY_HANDLE_T dispmanx_display; + DISPMANX_UPDATE_HANDLE_T dispmanx_update; + DISPMANX_ELEMENT_HANDLE_T dispmanx_element; +- EGL_DISPMANX_WINDOW_T egl_dispmanx_window; + WindowProperties properties_; ++ std::unique_ptr<Private> priv; + }; + + #endif /* GLMARK2_NATIVE_STATE_DISPMANX_H_ */ +diff --git a/wscript b/wscript +index e09fa78..6c3869c 100644 +--- a/wscript ++++ b/wscript +@@ -205,7 +205,7 @@ def configure_linux(ctx): + + ctx.check_cxx(lib = 'brcmGLESv2', uselib_store = 'glesv2', libpath='/opt/vc/lib') + ctx.check_cxx(lib = ['brcmEGL', 'brcmGLESv2'], uselib_store = 'egl', libpath='/opt/vc/lib') +- ctx.check_cxx(lib = ['bcm_host', 'vcos', 'vchiq_arm'], uselib_store = 'dispmanx', libpath='/opt/vc/lib') ++ ctx.check_cxx(lib = ['brcmEGL', 'brcmGLESv2', 'vchostif', 'bcm_host', 'vcos', 'vchiq_arm'], uselib_store = 'dispmanx', libpath='/opt/vc/lib') + + # Check optional packages + opt_pkgs = [('x11', 'x11', None, list_contains(ctx.options.flavors, 'x11')), +-- +2.28.0.497.g54e85e7af1 + diff --git a/meta-oe/recipes-benchmark/glmark2/files/0002-run-dispmanx-fullscreen.patch b/meta-oe/recipes-benchmark/glmark2/files/0002-run-dispmanx-fullscreen.patch new file mode 100644 index 0000000000..05a074cf55 --- /dev/null +++ b/meta-oe/recipes-benchmark/glmark2/files/0002-run-dispmanx-fullscreen.patch @@ -0,0 +1,32 @@ +From 110ef8357ebaf24bc3995e631ec809a2f84c3b87 Mon Sep 17 00:00:00 2001 +From: Trevor Woerner <twoerner@gmail.com> +Date: Thu, 3 Dec 2020 07:16:58 -0500 +Subject: [PATCH] run dispmanx fullscreen + +The dispmanx flavour can only run fullscreen, therefore set the size to +fullscreen when glmark2-es2-dispmanx is run. + +Upstream-Status: Submitted [https://github.com/glmark2/glmark2/pull/135] +Signed-off-by: Trevor Woerner <twoerner@gmail.com> +--- + src/main.cpp | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/src/main.cpp b/src/main.cpp +index d1077fe..d717cd4 100644 +--- a/src/main.cpp ++++ b/src/main.cpp +@@ -202,6 +202,11 @@ main(int argc, char *argv[]) + Options::size = std::pair<int,int>(800, 600); + } + ++#if GLMARK2_USE_DISPMANX ++ /* dispmanx can only run fullscreen */ ++ Options::size = std::pair<int,int>(-1, -1); ++#endif ++ + // Create the canvas + #if GLMARK2_USE_EGL + GLStateEGL gl_state; +-- +2.25.1 diff --git a/meta-oe/recipes-benchmark/glmark2/files/0003-GLVisualConfig-By-default-don-t-care-about-the-stenc.patch b/meta-oe/recipes-benchmark/glmark2/files/0003-GLVisualConfig-By-default-don-t-care-about-the-stenc.patch new file mode 100644 index 0000000000..dc47af83e7 --- /dev/null +++ b/meta-oe/recipes-benchmark/glmark2/files/0003-GLVisualConfig-By-default-don-t-care-about-the-stenc.patch @@ -0,0 +1,103 @@ +From b59ec731c8c7e084b289e4ea92938faaebcc389d Mon Sep 17 00:00:00 2001 +From: Alexandros Frantzis <alexandros.frantzis@collabora.com> +Date: Wed, 1 Nov 2023 13:43:00 +0200 +Subject: [PATCH] GLVisualConfig: By default don't care about the stencil + config component + +Our benchmarks don't use a stencil buffer, but its presence doesn't hurt +either, so don't mark configs that have one as unacceptable. Our scoring +still favors configs without one, unless the user explicitly specifies +otherwise with --visual-config. + +Upstream-Status: Backport [https://github.com/glmark2/glmark2/commit/5f23d540342ba69e12afeb6a1ac4f6fd36747975] +--- + doc/glmark2.1.in | 2 +- + src/gl-visual-config.cpp | 9 ++++++--- + src/gl-visual-config.h | 2 +- + src/options.cpp | 6 +++--- + 4 files changed, 11 insertions(+), 8 deletions(-) + +diff --git a/doc/glmark2.1.in b/doc/glmark2.1.in +index 015ba20..1f4a047 100644 +--- a/doc/glmark2.1.in ++++ b/doc/glmark2.1.in +@@ -38,7 +38,7 @@ Render to an off-screen surface + The visual configuration to use for the rendering target: + \'id=ID:red=R:green=G:blue=B:alpha=A:buffer=BUF:stencil=STENCIL:samples=SAMPLES'. + The parameters may be defined in any order, and any omitted parameters assume a +-default value of '0' (id, stencil, samples) or '1' (red, green, blue, alpha, buffer). ++default value of '0' (id, samples), -1 (stencil) or '1' (red, green, blue, alpha, buffer). + If 'id' is set to a non-zero value, all other parameters are ignored + .TP + \fB\-\-reuse\-context\fR +diff --git a/src/gl-visual-config.cpp b/src/gl-visual-config.cpp +index de92f93..665f53a 100644 +--- a/src/gl-visual-config.cpp ++++ b/src/gl-visual-config.cpp +@@ -26,7 +26,7 @@ + #include <vector> + + GLVisualConfig::GLVisualConfig(const std::string &s) : +- id(0), red(1), green(1), blue(1), alpha(1), depth(1), stencil(0), buffer(1), samples(0) ++ GLVisualConfig() + { + std::vector<std::string> elems; + +@@ -85,7 +85,7 @@ GLVisualConfig::match_score(const GLVisualConfig &target) const + score += score_component(blue, target.blue, 4); + score += score_component(alpha, target.alpha, 4); + score += score_component(depth, target.depth, 1); +- score += score_component(stencil, target.stencil, 0); ++ score += score_component(stencil, target.stencil, 1); + score += score_component(buffer, target.buffer, 1); + score += score_component(samples, target.samples, -1); + +@@ -135,11 +135,14 @@ GLVisualConfig::score_component(int component, int target, int scale) const + * score for all components ranges from [0,MAXIMUM_COMPONENT_SCORE). + * If scale > 0, we reward the largest positive difference from target, + * otherwise the smallest positive difference from target. ++ * We also reward the smallest positive difference from the target, ++ * if the target < 0, i.e., we don't care about this value. + */ + int diff = std::abs(scale) * (component - target); + if (diff > 0) + { +- score = scale < 0 ? MAXIMUM_COMPONENT_SCORE - diff : diff; ++ score = (scale < 0 || target < 0) ? ++ MAXIMUM_COMPONENT_SCORE - diff : diff; + score = std::min(MAXIMUM_COMPONENT_SCORE, score); + score = std::max(0, score); + } +diff --git a/src/gl-visual-config.h b/src/gl-visual-config.h +index b28473f..013ce14 100644 +--- a/src/gl-visual-config.h ++++ b/src/gl-visual-config.h +@@ -31,7 +31,7 @@ class GLVisualConfig + { + public: + GLVisualConfig(): +- id(0), red(1), green(1), blue(1), alpha(1), depth(1), stencil(0), buffer(1), samples(0) {} ++ id(0), red(1), green(1), blue(1), alpha(1), depth(1), stencil(-1), buffer(1), samples(0) {} + GLVisualConfig(const std::string &s); + + /** +diff --git a/src/options.cpp b/src/options.cpp +index 8d1ec16..3a31d3d 100644 +--- a/src/options.cpp ++++ b/src/options.cpp +@@ -213,9 +213,9 @@ Options::print_help() + " target: 'id=ID:red=R:green=G:blue=B:alpha=A:buffer=BUF:\n" + " stencil=STENCIL:samples=SAMPLES'. The parameters may be\n" + " defined in any order, and any omitted parameters assume a\n" +- " default value of '0' (id, stencil, samples) or '1' (red,\n" +- " green, blue, alpha, buffer). If 'id' is set to a non-zero\n" +- " value, all other parameters are ignored\n" ++ " default value of '0' (id, samples), '-1' (stencil) or\n" ++ " '1' (red, green, blue, alpha, buffer). If 'id' is set to\n" ++ " a non-zero value, all other parameters are ignored\n" + " --reuse-context Use a single context for all scenes\n" + " (by default, each scene gets its own context)\n" + " -s, --size WxH Size of the output window (default: 800x600)\n" +-- +2.44.0 + diff --git a/meta-oe/recipes-benchmark/glmark2/glmark2_git.bb b/meta-oe/recipes-benchmark/glmark2/glmark2_git.bb index 605417634a..0b61d6ed62 100644 --- a/meta-oe/recipes-benchmark/glmark2/glmark2_git.bb +++ b/meta-oe/recipes-benchmark/glmark2/glmark2_git.bb @@ -1,31 +1,37 @@ SUMMARY = "OpenGL (ES) 2.0 benchmark" DESCRIPTION = "glmark2 is a benchmark for OpenGL (ES) 2.0. \ It uses only the subset of the OpenGL 2.0 API that is compatible with OpenGL ES 2.0." -HOMEPAGE = "https://launchpad.net/glmark2" -BUGTRACKER = "https://bugs.launchpad.net/glmark2" +HOMEPAGE = "https://github.com/glmark2/glmark2" +BUGTRACKER = "https://github.com/glmark2/glmark2/issues" -LICENSE = "GPLv3+ & SGIv1" +LICENSE = "GPL-3.0-or-later & SGI-1" LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \ file://COPYING.SGI;beginline=5;md5=269cdab4af6748677acce51d9aa13552" DEPENDS = "libpng jpeg udev" +DEPENDS:append = " ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland-native wayland-protocols', '', d)}" -PV = "20190205+${SRCPV}" +PV = "2023.01" -COMPATIBLE_HOST_rpi = "${@bb.utils.contains('MACHINE_FEATURES', 'vc4graphics', '.*-linux*', 'null', d)}" - -SRC_URI = "git://github.com/glmark2/glmark2.git;protocol=https" -SRCREV = "c17fd14505f30d9e4dbad276f7aa956fd21a637b" +SRC_URI = " \ + git://github.com/glmark2/glmark2.git;protocol=https;branch=master \ + file://0001-fix-dispmanx-build.patch \ + file://0002-run-dispmanx-fullscreen.patch \ + file://0003-GLVisualConfig-By-default-don-t-care-about-the-stenc.patch \ +" +SRCREV = "42e3d8fe3aa88743ef90348138f643f7b04a9237" S = "${WORKDIR}/git" -inherit waf pkgconfig distro_features_check +inherit meson pkgconfig features_check -REQUIRED_DISTRO_FEATURES += "opengl" +ANY_OF_DISTRO_FEATURES = "opengl dispmanx" -PACKAGECONFIG ?= "${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'x11-gl x11-gles2', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'wayland opengl', 'wayland-gl wayland-gles2', '', d)} \ - drm-gl drm-gles2" +PACKAGECONFIG ?= "${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'x11-gles2', '', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'wayland opengl', 'wayland-gles2', '', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'dispmanx', 'dispmanx', '', d)} \ + drm-gles2 \ + " PACKAGECONFIG[x11-gl] = ",,virtual/libgl virtual/libx11" PACKAGECONFIG[x11-gles2] = ",,virtual/libgles2 virtual/libx11" @@ -33,6 +39,7 @@ PACKAGECONFIG[drm-gl] = ",,virtual/libgl libdrm virtual/libgbm" PACKAGECONFIG[drm-gles2] = ",,virtual/libgles2 libdrm virtual/libgbm" PACKAGECONFIG[wayland-gl] = ",,virtual/libgl wayland" PACKAGECONFIG[wayland-gles2] = ",,virtual/libgles2 wayland" +PACKAGECONFIG[dispmanx] = ",,virtual/libgles2 virtual/libx11" python __anonymous() { packageconfig = (d.getVar("PACKAGECONFIG") or "").split() @@ -49,7 +56,9 @@ python __anonymous() { flavors.append("drm-glesv2") if "drm-gl" in packageconfig: flavors.append("drm-gl") + if "dispmanx" in packageconfig: + flavors = ["dispmanx-glesv2"] if flavors: - d.appendVar("EXTRA_OECONF", " --with-flavors=%s" % ",".join(flavors)) + d.appendVar("EXTRA_OEMESON", " -Dflavors=%s" % ",".join(flavors)) } diff --git a/meta-oe/recipes-benchmark/iozone3/iozone3/0001-let-system-headers-provide-pread64.patch b/meta-oe/recipes-benchmark/iozone3/iozone3/0001-let-system-headers-provide-pread64.patch new file mode 100644 index 0000000000..a61a56a71d --- /dev/null +++ b/meta-oe/recipes-benchmark/iozone3/iozone3/0001-let-system-headers-provide-pread64.patch @@ -0,0 +1,34 @@ +From 64389a67b93a53b9fb7e9e20e905a5ee4613606b Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Wed, 15 Jan 2020 17:10:42 -0800 +Subject: [PATCH] let system headers provide pread64() + +The signature does not match with system headers anyway + +Fixes + +iozone.c:1270:9: error: redeclaration of 'pread64' must have the 'overloadable' attribute ssize_t pread64(); ^ /mnt/b/yoe/build/tmp/work/core2-64-yoe-linux/iozone3/488-r0/recipe-sysroot/usr/include/bits/unistd.h:83:1: note: previous overload of function is here pread64 (int __fd, void *const __clang_pass_object_size0 __buf, ^ +1 error generated. + +Upstream-Status: Pending + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + iozone.c | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/iozone.c b/iozone.c +index 090dd5f..fdea400 100644 +--- a/iozone.c ++++ b/iozone.c +@@ -1267,7 +1267,6 @@ int pit_gettimeofday(); + #ifdef HAVE_ANSIC_C + #if defined (HAVE_PREAD) && defined(_LARGEFILE64_SOURCE) + ssize_t pwrite64(); +-ssize_t pread64(); + #endif + #if !defined(linux) + char *getenv(); +-- +2.25.0 + diff --git a/meta-oe/recipes-benchmark/iozone3/iozone3/parallelism.patch b/meta-oe/recipes-benchmark/iozone3/iozone3/parallelism.patch index d5622ed2cf..48069ff141 100644 --- a/meta-oe/recipes-benchmark/iozone3/iozone3/parallelism.patch +++ b/meta-oe/recipes-benchmark/iozone3/iozone3/parallelism.patch @@ -10,20 +10,24 @@ Only fixed linux targets for now Signed-off-by: Khem Raj <raj.khem@gmail.com> Upstream-Status: Pending +--- + current/makefile | 18 +++++++++--------- + 1 file changed, 9 insertions(+), 9 deletions(-) - ---- current/makefile.org 2016-12-06 02:19:10.367911020 +0000 -+++ current/makefile 2016-12-06 02:21:38.767911020 +0000 -@@ -167,7 +167,7 @@ +diff --git current/makefile current/makefile +index 3a54701..7071427 100644 +--- current/makefile ++++ current/makefile +@@ -171,7 +171,7 @@ hpux_no_ansi: iozone_hpux_no.o libbif.o # # GNU 'C' compiler Linux build with threads, largefiles, async I/O # -linux: iozone_linux.o libasync.o libbif.o fileop_linux.o pit_server.o +linux: iozone_linux.o fileop_linux.o pit_server.o - $(CC) -O3 $(LDFLAGS) iozone_linux.o libasync.o libbif.o -lpthread \ + $(CC) -O3 $(CFLAGS) iozone_linux.o libasync.o libbif.o -lpthread \ -lrt -o iozone - $(CC) -O3 -Dlinux fileop_linux.o -o fileop -@@ -176,7 +176,7 @@ + $(CC) -O3 $(CFLAGS) -Dlinux fileop_linux.o -o fileop +@@ -180,7 +180,7 @@ linux: iozone_linux.o libasync.o libbif.o fileop_linux.o pit_server.o # # GNU 'C' compiler Linux build for powerpc chip with threads, largefiles, async I/O # @@ -32,7 +36,7 @@ Upstream-Status: Pending $(CC) -O3 $(LDFLAGS) iozone_linux-powerpc.o libasync.o \ libbif.o -lpthread -lrt -o iozone $(CC) -O3 -Dlinux fileop_linux-ppc.o -o fileop -@@ -184,7 +184,7 @@ +@@ -188,7 +188,7 @@ linux-powerpc: iozone_linux-powerpc.o libbif.o libasync.o fileop_linux-ppc.o pi # # GNU 'C' compiler Linux build for sparc chip with threads, largefiles, async I/O # @@ -41,7 +45,7 @@ Upstream-Status: Pending $(CC) -O3 $(LDFLAGS) iozone_linux-sparc.o libasync.o libbif.o \ -lpthread -lrt -o iozone $(CC) -O3 -Dlinux fileop_linux.o -o fileop -@@ -193,7 +193,7 @@ +@@ -197,7 +197,7 @@ linux-sparc: iozone_linux-sparc.o libbif.o libasync.o fileop_linux.o pit_server # # GNU 'C' compiler Linux build with threads, largefiles, async I/O # @@ -50,7 +54,7 @@ Upstream-Status: Pending $(CC) -O3 $(LDFLAGS) iozone_linux-ia64.o libbif.o libasync.o \ -lrt -lpthread -o iozone $(CC) -O3 -Dlinux fileop_linux-ia64.o -o fileop -@@ -202,7 +202,7 @@ +@@ -206,7 +206,7 @@ linux-ia64: iozone_linux-ia64.o libbif.o libasync.o fileop_linux-ia64.o pit_ser # # GNU 'C' compiler Linux build for powerpc chip with threads, largefiles, async I/O # @@ -59,7 +63,7 @@ Upstream-Status: Pending $(CC) -O3 -Dunix -DHAVE_ANSIC_C -DSHARED_MEM -DASYNC_IO \ -D_LARGEFILE64_SOURCE -Dlinux \ iozone_linux-powerpc64.o libasync.o libbif.o -lpthread \ -@@ -213,7 +213,7 @@ +@@ -217,7 +217,7 @@ linux-powerpc64: iozone_linux-powerpc64.o libbif.o libasync.o fileop_linux-ppc6 # # GNU 'C' compiler Linux build with threads, largefiles, async I/O # @@ -68,7 +72,7 @@ Upstream-Status: Pending $(CC) -O3 $(LDFLAGS) iozone_linux-arm.o libbif.o libasync.o \ -lrt -lpthread -o iozone $(CC) -O3 -Dlinux fileop_linux-arm.o -o fileop -@@ -222,7 +222,7 @@ +@@ -249,7 +249,7 @@ endif # # GNU 'C' compiler Linux build with threads, largefiles, async I/O # @@ -77,7 +81,7 @@ Upstream-Status: Pending $(CC) -O3 $(LDFLAGS) iozone_linux-AMD64.o libbif.o libasync.o \ -lrt -lpthread -o iozone $(CC) -O3 -Dlinux fileop_linux-AMD64.o -o fileop -@@ -231,7 +231,7 @@ +@@ -258,7 +258,7 @@ linux-AMD64: iozone_linux-AMD64.o libbif.o libasync.o fileop_linux-AMD64.o pit_ # # GNU 'C' compiler Linux build with S/390, threads, largfiles, async I/O # @@ -86,7 +90,7 @@ Upstream-Status: Pending $(CC) -O2 $(LDFLAGS) -lpthread -lrt iozone_linux-s390.o \ libbif.o libasync.o -o iozone $(CC) -O3 -Dlinux fileop_linux-s390.o -o fileop -@@ -240,7 +240,7 @@ +@@ -267,7 +267,7 @@ linux-S390: iozone_linux-s390.o libbif.o libasync.o fileop_linux-s390.o pit_serv # # GNU 'C' compiler Linux build with S/390, threads, largfiles, async I/O # @@ -95,3 +99,6 @@ Upstream-Status: Pending $(CC) -O2 $(LDFLAGS) -lpthread -lrt iozone_linux-s390x.o \ libbif.o libasync.o -o iozone $(CC) -O3 -Dlinux fileop_linux-s390x.o -o fileop +-- +2.25.1 + diff --git a/meta-oe/recipes-benchmark/iozone3/iozone3_484.bb b/meta-oe/recipes-benchmark/iozone3/iozone3_506.bb index f218b87e96..5a1306b6fe 100644 --- a/meta-oe/recipes-benchmark/iozone3/iozone3_484.bb +++ b/meta-oe/recipes-benchmark/iozone3/iozone3_506.bb @@ -1,31 +1,31 @@ SUMMARY = "Filesystem and Disk Benchmarking Tool" HOMEPAGE = "http://www.iozone.org/" -AUTHOR = "Don Capps <don.capps2@verizon.net>, William D. Norcott <wnorcott@us.oracle.com>" SECTION = "console/tests" LICENSE = "iozone3" LIC_FILES_CHKSUM = "file://iozone.c;beginline=37;endline=48;md5=7331260091868dcad0f9edea735b5f4b \ - file://iozone.c;beginline=269;endline=275;md5=77f9ee51e45b57a7e7519c4fa0b4f00b \ + file://iozone.c;beginline=276;endline=282;md5=77f9ee51e45b57a7e7519c4fa0b4f00b \ " SRC_URI = "http://www.iozone.org/src/current/${BPN}_${PV}.tar \ file://parallelism.patch \ + file://0001-let-system-headers-provide-pread64.patch \ file://copyright.txt \ " -SRC_URI[md5sum] = "aa6b88ab83793cb6809ca06949a6ab01" -SRC_URI[sha256sum] = "e816e6ae2f02003f2a6d19d47fcd9a50fdd8078da4f35fe3d4b9caf91c3d7216" +SRC_URI[sha256sum] = "114ce5c071873b9a2c7ba6e73d05d5ef7e66564392acbfcdc0b3261db10fcbe7" UPSTREAM_CHECK_REGEX = "iozone3_(?P<pver>\d+).tar" -S = "${WORKDIR}/${BPN}_${PV}/src/current/" +S = "${WORKDIR}/${BPN}_${PV}/src/current" # # All other arches can use the default OEMAKE except those # explicitly listed below. Another, the iozone3 Makefile # needs to be told about the cross-compiler explicitly here. # -EXTRA_OEMAKE_powerpc = "linux-powerpc CC='${CC}' GCC='${CC}'" -EXTRA_OEMAKE_powerpc64 = "linux-powerpc64 CC='${CC}' GCC='${CC}'" -EXTRA_OEMAKE_x86-64 = "linux-AMD64 CC='${CC}' GCC='${CC}'" -EXTRA_OEMAKE_arm = "linux-arm CC='${CC}' GCC='${CC}'" +EXTRA_OEMAKE:powerpc = "linux-powerpc CC='${CC}' GCC='${CC}'" +EXTRA_OEMAKE:powerpc64 = "linux-powerpc64 CC='${CC}' GCC='${CC}'" +EXTRA_OEMAKE:powerpc64le = "linux-powerpc64 CC='${CC}' GCC='${CC}'" +EXTRA_OEMAKE:x86-64 = "linux-AMD64 CC='${CC}' GCC='${CC}'" +EXTRA_OEMAKE:arm = "linux-arm CC='${CC}' GCC='${CC}'" EXTRA_OEMAKE = "linux CC='${CC}' GCC='${CC}'" TARGET_CC_ARCH += "${LDFLAGS}" @@ -53,7 +53,7 @@ do_install() { install -m 0644 ${WORKDIR}/${BPN}_${PV}/docs/Run_rules.doc ${D}${datadir}/doc/${BPN}/ } -FILES_${PN} += "${datadir}/doc/${PN}/copyright.txt" +FILES:${PN} += "${datadir}/doc/${PN}/copyright.txt" # LICENSE: # diff --git a/meta-oe/recipes-benchmark/iperf2/iperf2/0001-Detect-bool-definition-considering-stdbool.h-being-p.patch b/meta-oe/recipes-benchmark/iperf2/iperf2/0001-Detect-bool-definition-considering-stdbool.h-being-p.patch index 45c69ca067..dc3b85f8ef 100644 --- a/meta-oe/recipes-benchmark/iperf2/iperf2/0001-Detect-bool-definition-considering-stdbool.h-being-p.patch +++ b/meta-oe/recipes-benchmark/iperf2/iperf2/0001-Detect-bool-definition-considering-stdbool.h-being-p.patch @@ -13,6 +13,8 @@ template <> struct __libcpp_is_integral<int> : public tr Signed-off-by: Khem Raj <raj.khem@gmail.com> --- +Upstream-Status: Pending + m4/dast.m4 | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/meta-oe/recipes-benchmark/iperf2/iperf2_2.0.13.bb b/meta-oe/recipes-benchmark/iperf2/iperf2_2.0.13.bb index 4a520e3be5..86e5fef530 100644 --- a/meta-oe/recipes-benchmark/iperf2/iperf2_2.0.13.bb +++ b/meta-oe/recipes-benchmark/iperf2/iperf2_2.0.13.bb @@ -19,3 +19,5 @@ EXTRA_OECONF = "--exec-prefix=${STAGING_DIR_HOST}${layout_exec_prefix}" PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', 'ipv6', '', d)}" PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," + +CVE_PRODUCT = "iperf_project:iperf" diff --git a/meta-oe/recipes-benchmark/iperf3/iperf3/0001-configure.ac-check-for-CPP-prog.patch b/meta-oe/recipes-benchmark/iperf3/iperf3/0001-configure.ac-check-for-CPP-prog.patch new file mode 100644 index 0000000000..a67be4d4f6 --- /dev/null +++ b/meta-oe/recipes-benchmark/iperf3/iperf3/0001-configure.ac-check-for-CPP-prog.patch @@ -0,0 +1,28 @@ +From 80d208e47a525c915e3961efa61ccf91120ffafa Mon Sep 17 00:00:00 2001 +From: Andrey Zhizhikin <andrey.z@gmail.com> +Date: Wed, 3 Feb 2021 20:44:34 +0000 +Subject: [PATCH] configure.ac: check for CPP prog + +Absence of check for CPP_PROG causes following build errors: +| checking TCP_CONGESTION socket option... ../git/configure: line 14427: CPP: command not found +| ../git/configure: line 14553: ac_fn_c_try_cpp: command not found +| ../git/configure: line 14553: ac_fn_c_try_cpp: command not found + +Upstream-Status: Pending +Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com> +--- + configure.ac | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/configure.ac b/configure.ac +index 2594b39..559b160 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -49,6 +49,7 @@ AC_CANONICAL_HOST + # Checks for tools: c compiler, ranlib (used for creating static libraries), + # symlinks and libtool + AC_PROG_CC ++AC_PROG_CPP + AC_PROG_LN_S + + # Add -Wall if we are using GCC. diff --git a/meta-oe/recipes-benchmark/iperf3/iperf3/0002-Remove-pg-from-profile_CFLAGS.patch b/meta-oe/recipes-benchmark/iperf3/iperf3/0002-Remove-pg-from-profile_CFLAGS.patch index 959e29389c..ff1ea05bcb 100644 --- a/meta-oe/recipes-benchmark/iperf3/iperf3/0002-Remove-pg-from-profile_CFLAGS.patch +++ b/meta-oe/recipes-benchmark/iperf3/iperf3/0002-Remove-pg-from-profile_CFLAGS.patch @@ -1,4 +1,4 @@ -From 3ae408402635ea21ad90cd722c99ae3334376c91 Mon Sep 17 00:00:00 2001 +From 155ae12f7809e387a379703d8c09f227e430336d Mon Sep 17 00:00:00 2001 From: Khem Raj <raj.khem@gmail.com> Date: Fri, 14 Jul 2017 13:00:16 -0700 Subject: [PATCH] Remove -pg from profile_CFLAGS @@ -7,12 +7,15 @@ musl fails to link with missing gcrt1.o Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Mingli Yu <mingli.yu@windriver.com> + --- +Upstream-Status: Pending + src/Makefile.am | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Makefile.am b/src/Makefile.am -index 5be8562..3881aa6 100644 +index 11d3e17..4058cff 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -58,9 +58,9 @@ if ENABLE_PROFILING @@ -27,6 +30,3 @@ index 5be8562..3881aa6 100644 endif # Specify the sources and various flags for the test cases --- -2.21.0 - diff --git a/meta-oe/recipes-benchmark/iperf3/iperf3_3.7.bb b/meta-oe/recipes-benchmark/iperf3/iperf3_3.16.bb index d5296d7331..5cec4c6874 100644 --- a/meta-oe/recipes-benchmark/iperf3/iperf3_3.7.bb +++ b/meta-oe/recipes-benchmark/iperf3/iperf3_3.16.bb @@ -4,27 +4,28 @@ iperf is a tool for active measurements of the maximum achievable bandwidth \ on IP networks. It supports tuning of various parameters related to timing, \ protocols, and buffers. For each test it reports the bandwidth, loss, and \ other parameters." + HOMEPAGE = "http://software.es.net/iperf/" SECTION = "console/network" BUGTRACKER = "https://github.com/esnet/iperf/issues" -AUTHOR = "ESNET <info@es.net>, Lawrence Berkeley National Laboratory <websupport@lbl.gov>" -LICENSE = "BSD" -LIC_FILES_CHKSUM = "file://LICENSE;md5=f9088fe7ffdccd042f7645f1012d7f70" -DEPENDS = "openssl" +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://LICENSE;md5=dc6301c8256ceb8f71c9e3c2ae9096b9" -SRC_URI = "git://github.com/esnet/iperf.git \ +SRC_URI = "git://github.com/esnet/iperf.git;branch=master;protocol=https \ file://0002-Remove-pg-from-profile_CFLAGS.patch \ + file://0001-configure.ac-check-for-CPP-prog.patch \ " -SRCREV = "dfcea9f6a09ead01089a3c9d20c7032f2c0af2c1" +SRCREV = "f9481e1cd35159929458513692e4a8f9fdd1bd6f" S = "${WORKDIR}/git" inherit autotools +PACKAGECONFIG ?= "openssl" + PACKAGECONFIG[lksctp] = "ac_cv_header_netinet_sctp_h=yes,ac_cv_header_netinet_sctp_h=no,lksctp-tools" +PACKAGECONFIG[openssl] = "--with-openssl=${RECIPE_SYSROOT}${prefix},--without-openssl,openssl" CFLAGS += "-D_GNU_SOURCE" - -EXTRA_OECONF = "--with-openssl=${RECIPE_SYSROOT}${prefix}" diff --git a/meta-oe/recipes-benchmark/libc-bench/libc-bench/0001-build-Do-not-override-ldflags-from-environment.patch b/meta-oe/recipes-benchmark/libc-bench/libc-bench/0001-build-Do-not-override-ldflags-from-environment.patch new file mode 100644 index 0000000000..060b418fcd --- /dev/null +++ b/meta-oe/recipes-benchmark/libc-bench/libc-bench/0001-build-Do-not-override-ldflags-from-environment.patch @@ -0,0 +1,30 @@ +From 419dac71dd524a39ad2333e91334b4650e277a78 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Fri, 25 Jun 2021 09:43:00 -0700 +Subject: [PATCH] build: Do not override ldflags from environment + +bitbake passed LDFLAGS contain important information e.g. which compiler +runtime to link etc. Therefore append -static to LDFLAGS instead + +Upstream-Status: Pending +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index efda5c0..a867876 100644 +--- a/Makefile ++++ b/Makefile +@@ -3,7 +3,7 @@ SRCS = $(sort $(wildcard *.c)) + OBJS = $(SRCS:.c=.o) + + CFLAGS = -Os -D_XOPEN_SOURCE=700 +-LDFLAGS = -static ++LDFLAGS += -static + LIBS = -lpthread -lrt -lpthread + + +-- +2.32.0 + diff --git a/meta-oe/recipes-benchmark/libc-bench/libc-bench_git.bb b/meta-oe/recipes-benchmark/libc-bench/libc-bench_git.bb index e813894316..4ace4515ad 100644 --- a/meta-oe/recipes-benchmark/libc-bench/libc-bench_git.bb +++ b/meta-oe/recipes-benchmark/libc-bench/libc-bench_git.bb @@ -7,9 +7,10 @@ LICENSE = "MIT" LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=9a825c63897c53f487ef900598c31527" SRCREV = "b6b2ce5f9f87a09b14499cb00c600c601f022634" -PV = "20110206+git${SRCPV}" +PV = "20110206+git" -SRC_URI = "git://git.musl-libc.org/libc-bench \ +SRC_URI = "git://git.musl-libc.org/libc-bench;branch=master \ + file://0001-build-Do-not-override-ldflags-from-environment.patch \ " S = "${WORKDIR}/git" diff --git a/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-Revert-ld.hugetlbfs-fix-Ttext-segment-argument-on-AA.patch b/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-Revert-ld.hugetlbfs-fix-Ttext-segment-argument-on-AA.patch new file mode 100644 index 0000000000..0787ef27d2 --- /dev/null +++ b/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-Revert-ld.hugetlbfs-fix-Ttext-segment-argument-on-AA.patch @@ -0,0 +1,210 @@ +From 0a163f60b4a316c4b6f1726a71c84755f3bd85e7 Mon Sep 17 00:00:00 2001 +From: Martin Jansa <martin.jansa@lge.com> +Date: Wed, 16 Sep 2020 04:36:04 -0700 +Subject: [PATCH] Revert "ld.hugetlbfs: fix -Ttext-segment argument on AArch64" + +This reverts commit 852dcc963ce44861ed7c4e225aa92ff2b5b43579. + +* works around + ERROR: libhugetlbfs-1_2.23-r0 do_populate_sysroot: Fatal errors occurred in subprocesses: + Command '['arm-oe-linux-gnueabi-strip', '--remove-section=.comment', '--remove-section=.note', 'libhugetlbfs/1_2.23-r0/sysroot-destdir/usr/lib/libhugetlbfs/tests/obj32/linkhuge_rw']' returned non-zero exit status 1. + Subprocess output:arm-oe-linux-gnueabi-strip: + libhugetlbfs/1_2.23-r0/sysroot-destdir/usr/lib/libhugetlbfs/tests/obj32/stmuFa58: error: PHDR segment not covered by LOAD segment + arm-oe-linux-gnueabi-strip: libhugetlbfs/1_2.23-r0/sysroot-destdir/usr/lib/libhugetlbfs/tests/obj32/stmuFa58[.interp]: file format not recognized + +I don't see anything suspicious in the build (the same cmdline as in 2.22 +version), but it uses + +libhugetlbfs/1_2.22-r0-old/temp/log.do_compile:arm-oe-linux-gnueabi-gcc + -mthumb -mfpu=neon-vfpv4 -mfloat-abi=hard -mcpu=cortex-a7 -Wl,-O1 +-Wl,--hash-style=gnu -Wl,--as-needed -Wl,-z,relro,-z,now +-fstack-protector-strong -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security +-Werror=format-security -Werror=return-type +--sysroot=/jenkins/mjansa/build/ros/oe-melodic-gatesgarth/libhugetlbfs/1_2.22-r0/recipe-sysroot +-I.. -O2 -Wall -g -o obj32/linkhuge_rw.o -c linkhuge_rw.c +libhugetlbfs/1_2.22-r0-old/temp/log.do_compile:arm-oe-linux-gnueabi-gcc + -mthumb -mfpu=neon-vfpv4 -mfloat-abi=hard -mcpu=cortex-a7 -Wl,-O1 +-Wl,--hash-style=gnu -Wl,--as-needed -Wl,-z,relro,-z,now +-fstack-protector-strong -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security +-Werror=format-security -Werror=return-type +--sysroot=/jenkins/mjansa/build/ros/oe-melodic-gatesgarth/libhugetlbfs/1_2.22-r0/recipe-sysroot +-B./obj32 -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -Wl,-z,relro,-z,now +-ldl -L../obj32 -o obj32/linkhuge_rw -Wl,--no-as-needed -lpthread -ldl +-lhugetlbfs_privutils -Wl,--hugetlbfs-align obj32/linkhuge_rw.o +obj32/testutils.o +libhugetlbfs/1_2.23-r0-new/temp/log.do_compile:arm-oe-linux-gnueabi-gcc + -mthumb -mfpu=neon-vfpv4 -mfloat-abi=hard -mcpu=cortex-a7 -Wl,-O1 +-Wl,--hash-style=gnu -Wl,--as-needed -Wl,-z,relro,-z,now +-fstack-protector-strong -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security +-Werror=format-security -Werror=return-type +--sysroot=/jenkins/mjansa/build/ros/oe-melodic-gatesgarth/libhugetlbfs/1_2.23-r0/recipe-sysroot +-I.. -O2 -Wall -g -o obj32/linkhuge_rw.o -c linkhuge_rw.c +libhugetlbfs/1_2.23-r0-new/temp/log.do_compile:arm-oe-linux-gnueabi-gcc + -mthumb -mfpu=neon-vfpv4 -mfloat-abi=hard -mcpu=cortex-a7 -Wl,-O1 +-Wl,--hash-style=gnu -Wl,--as-needed -Wl,-z,relro,-z,now +-fstack-protector-strong -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security +-Werror=format-security -Werror=return-type +--sysroot=/jenkins/mjansa/build/ros/oe-melodic-gatesgarth/libhugetlbfs/1_2.23-r0/recipe-sysroot +-B./obj32 -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -Wl,-z,relro,-z,now +-ldl -L../obj32 -o obj32/linkhuge_rw -Wl,--no-as-needed -lpthread -ldl +-lhugetlbfs_privutils -Wl,--hugetlbfs-align obj32/linkhuge_rw.o +obj32/testutils.o + +And the git log between 2.22 and 2.23 is also very short and looks +reasonable. +https://github.com/libhugetlbfs/libhugetlbfs/compare/2.22...2.23 + +When checking with readelf -l it also shows the error about PHDR segment: +arm-oe-linux-gnueabi-readelf -l +./1_2.22-r0-old/sysroot-destdir/usr/lib/libhugetlbfs/tests/obj32/linkhuge_rw + +Elf file type is DYN (Shared object file) +Entry point 0x201105 +There are 10 program headers, starting at offset 52 + +Program Headers: + Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align + PHDR 0x000034 0x00200034 0x00200034 0x00140 0x00140 R 0x4 + INTERP 0x000174 0x00200174 0x00200174 0x0001d 0x0001d R 0x1 + [Requesting program interpreter: /usr/lib/ld-linux-armhf.so.3] + LOAD 0x000000 0x00200000 0x00200000 0x1222c 0x1222c R E 0x200000 + LOAD 0x1ffdf0 0x005ffdf0 0x005ffdf0 0x102e0 0x202ec RW 0x200000 + DYNAMIC 0x1ffdf8 0x005ffdf8 0x005ffdf8 0x00128 0x00128 RW 0x4 + NOTE 0x000194 0x00200194 0x00200194 0x00044 0x00044 R 0x4 + GNU_EH_FRAME 0x012224 0x00212224 0x00212224 0x00008 0x00008 R 0x4 + GNU_STACK 0x000000 0x00000000 0x00000000 0x00000 0x00000 RW 0x10 + EXIDX 0x001c5c 0x00201c5c 0x00201c5c 0x00008 0x00008 R 0x4 + GNU_RELRO 0x1ffdf0 0x005ffdf0 0x005ffdf0 0x00210 0x00210 RW 0x4 + + Section to Segment mapping: + Segment Sections... + 00 + 01 .interp + 02 .interp .note.ABI-tag .note.gnu.build-id .dynsym .dynstr +.gnu.hash .gnu.version .gnu.version_r .rel.dyn .rel.plt .init .plt .text +.fini .ARM.extab .ARM.exidx .rodata .eh_frame .eh_frame_hdr + 03 .fini_array .init_array .dynamic .got .data .bss + 04 .dynamic + 05 .note.ABI-tag .note.gnu.build-id + 06 .eh_frame_hdr + 07 + 08 .ARM.extab .ARM.exidx + 09 .fini_array .init_array .dynamic .got + +arm-oe-linux-gnueabi-readelf -l +./1_2.23-r0-new/sysroot-destdir/usr/lib/libhugetlbfs/tests/obj32/linkhuge_rw + +Elf file type is DYN (Shared object file) +Entry point 0x31cd1 +There are 10 program headers, starting at offset 52 + +Program Headers: + Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align + PHDR 0x000000 0x00000000 0x00000000 0x00000 0x00000 R 0 +readelf: Error: the PHDR segment is not covered by a LOAD segment + INTERP 0x030d40 0x00030d40 0x00030d40 0x0001d 0x0001d R 0x1 + [Requesting program interpreter: /usr/lib/ld-linux-armhf.so.3] + LOAD 0x030d40 0x00030d40 0x00030d40 0x120b8 0x120b8 R E 0x200000 + LOAD 0x1ffdf0 0x003ffdf0 0x003ffdf0 0x102e0 0x202ec RW 0x200000 + DYNAMIC 0x1ffdf8 0x003ffdf8 0x003ffdf8 0x00128 0x00128 RW 0x4 + NOTE 0x030d60 0x00030d60 0x00030d60 0x00044 0x00044 R 0x4 + GNU_EH_FRAME 0x042df0 0x00042df0 0x00042df0 0x00008 0x00008 R 0x4 + GNU_STACK 0x000000 0x00000000 0x00000000 0x00000 0x00000 RW 0x10 + EXIDX 0x032828 0x00032828 0x00032828 0x00008 0x00008 R 0x4 + GNU_RELRO 0x1ffdf0 0x003ffdf0 0x003ffdf0 0x00210 0x00210 RW 0x4 + + Section to Segment mapping: + Segment Sections... + 00 + 01 .interp + 02 .interp .note.ABI-tag .note.gnu.build-id .dynsym .dynstr +.gnu.hash .gnu.version .gnu.version_r .rel.dyn .rel.plt .init .plt .text +.fini .ARM.extab .ARM.exidx .rodata .eh_frame .eh_frame_hdr + 03 .fini_array .init_array .dynamic .got .data .bss + 04 .dynamic + 05 .note.ABI-tag .note.gnu.build-id + 06 .eh_frame_hdr + 07 + 08 .ARM.extab .ARM.exidx + 09 .fini_array .init_array .dynamic .got + +And the diff between these 2: + +1_2.22-r0-old/sysroot-destdir/usr/lib/libhugetlbfs/tests/obj32/linkhuge_rw.readelf +1_2.23-r0-new/sysroot-destdir/usr/lib/libhugetlbfs/tests/obj32/linkhuge_rw.readelf + Elf file type is DYN (Shared object file) +-Entry point 0x201105 ++Entry point 0x31cd1 + There are 10 program headers, starting at offset 52 + + Program Headers: + Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align +- PHDR 0x000034 0x00200034 0x00200034 0x00140 0x00140 R 0x4 +- INTERP 0x000174 0x00200174 0x00200174 0x0001d 0x0001d R 0x1 ++ PHDR 0x000000 0x00000000 0x00000000 0x00000 0x00000 R 0 ++readelf: Error: the PHDR segment is not covered by a LOAD segment ++ INTERP 0x030d40 0x00030d40 0x00030d40 0x0001d 0x0001d R 0x1 + [Requesting program interpreter: /usr/lib/ld-linux-armhf.so.3] +- LOAD 0x000000 0x00200000 0x00200000 0x1222c 0x1222c R E 0x200000 +- LOAD 0x1ffdf0 0x005ffdf0 0x005ffdf0 0x102e0 0x202ec RW 0x200000 +- DYNAMIC 0x1ffdf8 0x005ffdf8 0x005ffdf8 0x00128 0x00128 RW 0x4 +- NOTE 0x000194 0x00200194 0x00200194 0x00044 0x00044 R 0x4 +- GNU_EH_FRAME 0x012224 0x00212224 0x00212224 0x00008 0x00008 R 0x4 ++ LOAD 0x030d40 0x00030d40 0x00030d40 0x120b8 0x120b8 R E 0x200000 ++ LOAD 0x1ffdf0 0x003ffdf0 0x003ffdf0 0x102e0 0x202ec RW 0x200000 ++ DYNAMIC 0x1ffdf8 0x003ffdf8 0x003ffdf8 0x00128 0x00128 RW 0x4 ++ NOTE 0x030d60 0x00030d60 0x00030d60 0x00044 0x00044 R 0x4 ++ GNU_EH_FRAME 0x042df0 0x00042df0 0x00042df0 0x00008 0x00008 R 0x4 + GNU_STACK 0x000000 0x00000000 0x00000000 0x00000 0x00000 RW 0x10 +- EXIDX 0x001c5c 0x00201c5c 0x00201c5c 0x00008 0x00008 R 0x4 +- GNU_RELRO 0x1ffdf0 0x005ffdf0 0x005ffdf0 0x00210 0x00210 RW 0x4 ++ EXIDX 0x032828 0x00032828 0x00032828 0x00008 0x00008 R 0x4 ++ GNU_RELRO 0x1ffdf0 0x003ffdf0 0x003ffdf0 0x00210 0x00210 RW 0x4 + + Section to Segment mapping: + +Revert fixes this build issue, but I still don't see why it fails this way. + +Upstream-Status: Pending + +Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> + +# Please enter the commit message for your changes. Lines starting +# with '#' will be ignored, and an empty message aborts the commit. +# +# Date: Wed Sep 16 13:43:09 2020 +0200 +# +# On branch jansa/master +# Changes to be committed: +# new file: meta-oe/recipes-benchmark/libhugetlbfs/files/0001-Revert-ld.hugetlbfs-fix-Ttext-segment-argument-on-AA.patch +# modified: meta-oe/recipes-benchmark/libhugetlbfs/libhugetlbfs_git.bb +# +# Untracked files: +# counts.txt +# diff +# log.svn +# log.svn2 +# wip/ +# +--- + ld.hugetlbfs | 4 +--- + 1 file changed, 1 insertion(+), 3 deletions(-) + +diff --git a/ld.hugetlbfs b/ld.hugetlbfs +index 5e4e497..6ee8238 100755 +--- a/ld.hugetlbfs ++++ b/ld.hugetlbfs +@@ -130,9 +130,7 @@ if [ "$HTLB_ALIGN" == "slice" ]; then + # targeting the ARM platform one needs to explicitly set the text segment offset + # otherwise it will be NULL. + case "$EMU" in +- armelf*_linux_eabi|aarch64elf*|aarch64linux*) +- printf -v TEXTADDR "%x" "$SLICE_SIZE" +- HTLBOPTS="$HTLBOPTS -Ttext-segment=$TEXTADDR" ;; ++ armelf*_linux_eabi|aarch64elf*|aarch64linux*) HTLBOPTS="$HTLBOPTS -Ttext-segment=$SLICE_SIZE" ;; + elf_i386) HTLBOPTS="$HTLBOPTS -Ttext-segment=0x08000000" ;; + elf64ppc|elf64lppc) + if [ "$MMU_TYPE" == "Hash" ] ; then +-- +2.17.1 + diff --git a/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-huge_page_setup_helper-use-python3-interpreter.patch b/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-huge_page_setup_helper-use-python3-interpreter.patch new file mode 100644 index 0000000000..e45f283b38 --- /dev/null +++ b/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-huge_page_setup_helper-use-python3-interpreter.patch @@ -0,0 +1,29 @@ +From b77c61de4d88d2c6e5d31f4f5a5877cc4c61272e Mon Sep 17 00:00:00 2001 +From: Andrey Zhizhikin <andrey.z@gmail.com> +Date: Mon, 27 Jan 2020 17:27:55 +0000 +Subject: [PATCH] huge_page_setup_helper: use python3 interpreter + +Setup helper script is already prepared to be used with python3, use the +interpreter explicitly. This removes dependency to python2 and will not +fail the QA check. + +Upstream-Status: Inappropriate [OE-specific] + +Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com> +--- + huge_page_setup_helper.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/huge_page_setup_helper.py b/huge_page_setup_helper.py +index a9ba2bf..7ba0c92 100755 +--- a/huge_page_setup_helper.py ++++ b/huge_page_setup_helper.py +@@ -1,4 +1,4 @@ +-#!/usr/bin/python ++#!/usr/bin/env python3 + + # + # Tool to set up Linux large page support with minimal effort +-- +2.17.1 + diff --git a/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-include-stddef.h-for-ptrdiff_t.patch b/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-include-stddef.h-for-ptrdiff_t.patch index a84414c024..914b0514f8 100644 --- a/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-include-stddef.h-for-ptrdiff_t.patch +++ b/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-include-stddef.h-for-ptrdiff_t.patch @@ -6,6 +6,8 @@ Subject: [PATCH] include stddef.h for ptrdiff_t Signed-off-by: Khem Raj <raj.khem@gmail.com> --- +Upstream-Status: Pending + morecore.c | 1 + 1 file changed, 1 insertion(+) diff --git a/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-run_test.py-not-use-hard-coded-path-.-obj-hugeadm.patch b/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-run_test.py-not-use-hard-coded-path-.-obj-hugeadm.patch index 53f35abb7b..83934abef8 100644 --- a/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-run_test.py-not-use-hard-coded-path-.-obj-hugeadm.patch +++ b/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-run_test.py-not-use-hard-coded-path-.-obj-hugeadm.patch @@ -10,15 +10,20 @@ Upstream-Status: Submitted Signed-off-by: Ting Liu <b28495@freescale.com> +Update for 2.22. +Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com> + +Update to work for python3 +Signed-off-by: Changqing Li <changqing.li@windriver.com> --- tests/run_tests.py | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/tests/run_tests.py b/tests/run_tests.py -index 3c95a03..560df6b 100755 +index 018264d..0aabcd1 100755 --- a/tests/run_tests.py +++ b/tests/run_tests.py -@@ -234,9 +234,19 @@ def get_pagesizes(): +@@ -245,9 +245,19 @@ def get_pagesizes(): Use libhugetlbfs' hugeadm utility to get a list of page sizes that have active mount points and at least one huge page allocated to the pool. """ @@ -34,8 +39,11 @@ index 3c95a03..560df6b 100755 + return sizes + except OSError: + return sizes -+ out = p.stdout.read().strip() ++ out = p.stdout.read().decode().strip() + - if rc != 0 or out == "": return sizes + if rc != 0 or out == "": + return sizes - for size in out.split("\n"): sizes.add(int(size)) +-- +2.7.4 + diff --git a/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-tests-makefile-Append-CPPFLAGS-rather-then-override.patch b/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-tests-makefile-Append-CPPFLAGS-rather-then-override.patch new file mode 100644 index 0000000000..78a4cb0fc2 --- /dev/null +++ b/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-tests-makefile-Append-CPPFLAGS-rather-then-override.patch @@ -0,0 +1,31 @@ +From b6dba773491bbb7b4664dacdd87a12af860f1bd8 Mon Sep 17 00:00:00 2001 +From: Oleksiy Obitotskyy <oobitots@cisco.com> +Date: Thu, 28 Jan 2021 05:43:33 -0800 +Subject: [PATCH] tests/makefile: Append CPPFLAGS rather then override + +CPPFLAGS overrided and we could miss some options needed. + +Upstream-Status: Submitted +Signed-off-by: Oleksiy Obitotskyy <oobitots@cisco.com> +--- + tests/Makefile | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/tests/Makefile b/tests/Makefile +index 0ca3716..d262932 100644 +--- a/tests/Makefile ++++ b/tests/Makefile +@@ -33,8 +33,8 @@ HELPERS = get_hugetlbfs_path compare_kvers + HELPER_LIBS = libheapshrink.so + BADTOOLCHAIN = bad-toolchain.sh + +-CFLAGS = -O2 -Wall -g +-CPPFLAGS = -I.. ++CFLAGS += -O2 -Wall -g ++CPPFLAGS += -I.. + STATIC_LIBHUGE = -Wl,--whole-archive -lhugetlbfs -Wl,--no-whole-archive + STATIC_LDLIBS = -Wl,--no-as-needed -lpthread + LDLIBS = $(STATIC_LDLIBS) -ldl -lhugetlbfs_privutils +-- +2.26.2.Cisco + diff --git a/meta-oe/recipes-benchmark/libhugetlbfs/files/0002-Mark-glibc-specific-code-so.patch b/meta-oe/recipes-benchmark/libhugetlbfs/files/0002-Mark-glibc-specific-code-so.patch index 8cb184a651..7ad6c43eb1 100644 --- a/meta-oe/recipes-benchmark/libhugetlbfs/files/0002-Mark-glibc-specific-code-so.patch +++ b/meta-oe/recipes-benchmark/libhugetlbfs/files/0002-Mark-glibc-specific-code-so.patch @@ -6,6 +6,8 @@ Subject: [PATCH] Mark glibc specific code so Signed-off-by: Khem Raj <raj.khem@gmail.com> --- +Upstream-Status: Pending + morecore.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/meta-oe/recipes-benchmark/libhugetlbfs/files/0003-alloc.c-Avoid-sysconf-_SC_LEVEL2_CACHE_LINESIZE-on-l.patch b/meta-oe/recipes-benchmark/libhugetlbfs/files/0003-alloc.c-Avoid-sysconf-_SC_LEVEL2_CACHE_LINESIZE-on-l.patch index aca7e803d0..858a8e511a 100644 --- a/meta-oe/recipes-benchmark/libhugetlbfs/files/0003-alloc.c-Avoid-sysconf-_SC_LEVEL2_CACHE_LINESIZE-on-l.patch +++ b/meta-oe/recipes-benchmark/libhugetlbfs/files/0003-alloc.c-Avoid-sysconf-_SC_LEVEL2_CACHE_LINESIZE-on-l.patch @@ -8,6 +8,8 @@ musl does not have it Signed-off-by: Khem Raj <raj.khem@gmail.com> --- +Upstream-Status: Pending + alloc.c | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/meta-oe/recipes-benchmark/libhugetlbfs/files/0004-shm.c-Mark-glibc-specific-changes-so.patch b/meta-oe/recipes-benchmark/libhugetlbfs/files/0004-shm.c-Mark-glibc-specific-changes-so.patch index 58776e8710..c3f7b3e479 100644 --- a/meta-oe/recipes-benchmark/libhugetlbfs/files/0004-shm.c-Mark-glibc-specific-changes-so.patch +++ b/meta-oe/recipes-benchmark/libhugetlbfs/files/0004-shm.c-Mark-glibc-specific-changes-so.patch @@ -6,6 +6,8 @@ Subject: [PATCH] shm.c: Mark glibc specific changes so Signed-off-by: Khem Raj <raj.khem@gmail.com> --- +Upstream-Status: Pending + shm.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/meta-oe/recipes-benchmark/libhugetlbfs/files/0005-Include-dirent.h-for-ino_t.patch b/meta-oe/recipes-benchmark/libhugetlbfs/files/0005-Include-dirent.h-for-ino_t.patch index 08174200d8..8bd1633392 100644 --- a/meta-oe/recipes-benchmark/libhugetlbfs/files/0005-Include-dirent.h-for-ino_t.patch +++ b/meta-oe/recipes-benchmark/libhugetlbfs/files/0005-Include-dirent.h-for-ino_t.patch @@ -8,12 +8,16 @@ error: unknown type name 'ino_t'; did you mean 'int'? Signed-off-by: Khem Raj <raj.khem@gmail.com> +Update for 2.22. +Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com> --- +Upstream-Status: Pending + tests/hugetests.h | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/hugetests.h b/tests/hugetests.h -index 8b1d8d9..056042c 100644 +index bc4e16a..fbe4dc0 100644 --- a/tests/hugetests.h +++ b/tests/hugetests.h @@ -22,6 +22,7 @@ @@ -21,6 +25,9 @@ index 8b1d8d9..056042c 100644 #include <errno.h> #include <string.h> +#include <dirent.h> + #include <unistd.h> #include "libhugetlbfs_privutils.h" - #include "libhugetlbfs_testprobes.h" +-- +2.7.4 + diff --git a/meta-oe/recipes-benchmark/libhugetlbfs/files/0006-include-limits.h-for-PATH_MAX.patch b/meta-oe/recipes-benchmark/libhugetlbfs/files/0006-include-limits.h-for-PATH_MAX.patch index 2ead21fb46..e4f8030961 100644 --- a/meta-oe/recipes-benchmark/libhugetlbfs/files/0006-include-limits.h-for-PATH_MAX.patch +++ b/meta-oe/recipes-benchmark/libhugetlbfs/files/0006-include-limits.h-for-PATH_MAX.patch @@ -10,6 +10,8 @@ error: 'PATH_MAX' undeclared Signed-off-by: Khem Raj <raj.khem@gmail.com> --- +Upstream-Status: Pending + hugeadm.c | 1 + tests/gethugepagesizes.c | 1 + 2 files changed, 2 insertions(+) diff --git a/meta-oe/recipes-benchmark/libhugetlbfs/libhugetlbfs_git.bb b/meta-oe/recipes-benchmark/libhugetlbfs/libhugetlbfs_git.bb index 66fd8e21da..80af9873b1 100644 --- a/meta-oe/recipes-benchmark/libhugetlbfs/libhugetlbfs_git.bb +++ b/meta-oe/recipes-benchmark/libhugetlbfs/libhugetlbfs_git.bb @@ -1,18 +1,18 @@ SUMMARY = "A library which provides easy access to huge pages of memory" HOMEPAGE = "https://github.com/libhugetlbfs/libhugetlbfs" -LICENSE = "LGPLv2.1" +LICENSE = "LGPL-2.1-only" LIC_FILES_CHKSUM = "file://LGPL-2.1;md5=2d5025d4aa3495befef8f17206a5b0a1" DEPENDS = "sysfsutils" -RDEPENDS_${PN} += "bash python python-io python-lang python-subprocess python-resource" -RDEPENDS_${PN}-tests += "bash" +RDEPENDS:${PN} += "bash python3-core" +RDEPENDS:${PN}-tests += "bash python3-core" -PV = "2.21" +PV = "2.23" PE = "1" -SRCREV = "73d06e69108f231696e9c5c44f4b42690fc5d752" +SRCREV = "6b126a4d7da9490fa40fe7e1b962edcb939feddc" SRC_URI = " \ - git://github.com/libhugetlbfs/libhugetlbfs.git;protocol=https \ + git://github.com/libhugetlbfs/libhugetlbfs.git;protocol=https;branch=master \ file://skip-checking-LIB32-and-LIB64-if-they-point-to-the-s.patch \ file://libhugetlbfs-avoid-search-host-library-path-for-cros.patch \ file://tests-Makefile-install-static-4G-edge-testcases.patch \ @@ -24,6 +24,9 @@ SRC_URI = " \ file://0004-shm.c-Mark-glibc-specific-changes-so.patch \ file://0005-Include-dirent.h-for-ino_t.patch \ file://0006-include-limits.h-for-PATH_MAX.patch \ + file://0001-huge_page_setup_helper-use-python3-interpreter.patch \ + file://0001-Revert-ld.hugetlbfs-fix-Ttext-segment-argument-on-AA.patch \ + file://0001-tests-makefile-Append-CPPFLAGS-rather-then-override.patch \ " UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+(\.\d+)+)" @@ -34,8 +37,9 @@ COMPATIBLE_HOST = "(i.86|x86_64|powerpc|powerpc64|aarch64|arm).*-linux*" LIBARGS = "LIB32=${baselib} LIB64=${baselib}" LIBHUGETLBFS_ARCH = "${TARGET_ARCH}" -LIBHUGETLBFS_ARCH_powerpc = "ppc" -LIBHUGETLBFS_ARCH_powerpc64 = "ppc64" +LIBHUGETLBFS_ARCH:powerpc = "ppc" +LIBHUGETLBFS_ARCH:powerpc64 = "ppc64" +LIBHUGETLBFS_ARCH:powerpc64le = "ppc64le" EXTRA_OEMAKE = "'ARCH=${LIBHUGETLBFS_ARCH}' 'OPT=${CFLAGS}' 'CC=${CC}' ${LIBARGS} BUILDTYPE=NATIVEONLY V=2" PARALLEL_MAKE = "" CFLAGS += "-fexpensive-optimizations -frename-registers -fomit-frame-pointer -g0" @@ -61,12 +65,15 @@ do_install() { PACKAGES =+ "${PN}-tests " -FILES_${PN} += "${libdir}/*.so" -FILES_${PN}-dev = "${includedir}" -FILES_${PN}-dbg += "${libdir}/libhugetlbfs/tests/obj32/.debug ${libdir}/libhugetlbfs/tests/obj64/.debug" -FILES_${PN}-tests += "${libdir}/libhugetlbfs/tests" +FILES:${PN} += "${libdir}/*.so" +FILES:${PN}-dev = "${includedir}" +FILES:${PN}-dbg += "${libdir}/libhugetlbfs/tests/obj32/.debug ${libdir}/libhugetlbfs/tests/obj64/.debug" +FILES:${PN}-tests += "${libdir}/libhugetlbfs/tests" -INSANE_SKIP_${PN} = "dev-so" +INSANE_SKIP:${PN} = "dev-so" INHIBIT_PACKAGE_STRIP = "1" INHIBIT_PACKAGE_DEBUG_SPLIT = "1" + +# see https://github.com/libhugetlbfs/libhugetlbfs/issues/52 +SKIP_RECIPE[libhugetlbfs] ?= "Needs porting to glibc 2.34+" diff --git a/meta-oe/recipes-benchmark/linpack/linpack/0001-linpack-Define-DP-only-when-SP-is-not-defined.patch b/meta-oe/recipes-benchmark/linpack/linpack/0001-linpack-Define-DP-only-when-SP-is-not-defined.patch new file mode 100644 index 0000000000..4eb18e38ca --- /dev/null +++ b/meta-oe/recipes-benchmark/linpack/linpack/0001-linpack-Define-DP-only-when-SP-is-not-defined.patch @@ -0,0 +1,32 @@ +From f092d4be22acd09e791187b8e9bff6d312721ce4 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Wed, 10 Nov 2021 11:36:31 -0800 +Subject: [PATCH] linpack: Define DP only when SP is not defined + +This helps compiling two versions ( SP/FP ) of the benchmark just by +passing -DSP on compile cmdline + +Upstream-Status: Pending + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + linpacknew.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/linpacknew.c b/linpacknew.c +index 17b2824..c656082 100644 +--- a/linpacknew.c ++++ b/linpacknew.c +@@ -28,7 +28,9 @@ + #include <time.h> + #include <float.h> + ++#ifndef SP + #define DP ++#endif + + #ifdef SP + #define ZERO 0.0 +-- +2.33.1 + diff --git a/meta-oe/recipes-benchmark/linpack/linpack_1.0.bb b/meta-oe/recipes-benchmark/linpack/linpack_1.0.bb index aed95cdaa4..603004ddd5 100644 --- a/meta-oe/recipes-benchmark/linpack/linpack_1.0.bb +++ b/meta-oe/recipes-benchmark/linpack/linpack_1.0.bb @@ -4,17 +4,21 @@ SUMMARY = "LINPACK is a software library for performing numerical linear algebra LICENSE = "PD" LIC_FILES_CHKSUM ="file://${WORKDIR}/linpacknew.c;beginline=1;endline=23;md5=aa025e3bc44190c71e4c5e3b084fed87" -SRC_URI = "http://www.netlib.org/benchmark/linpackc.new;downloadfilename=linpacknew.c" +SRC_URI = "http://www.netlib.org/benchmark/linpackc.new;downloadfilename=linpacknew.c \ + file://0001-linpack-Define-DP-only-when-SP-is-not-defined.patch \ + " SRC_URI[md5sum] = "1c5d0b6a31264685d2e651c920e3cdf4" SRC_URI[sha256sum] = "a63f2ec86512959f1fd926bfafb85905b2d7b7402942ffae3af374d48745e97e" S = "${WORKDIR}" do_compile () { - ${CC} ${CFLAGS} ${LDFLAGS} -o linpack linpacknew.c -lm + ${CC} ${CFLAGS} ${LDFLAGS} -DDP -o linpack_dp linpacknew.c -lm + ${CC} ${CFLAGS} ${LDFLAGS} -DSP -o linpack_sp linpacknew.c -lm } do_install () { - install -Dm 0755 linpack ${D}${bindir}/linpack + install -Dm 0755 linpack_dp ${D}${bindir}/linpack_dp + install -Dm 0755 linpack_sp ${D}${bindir}/linpack_sp } diff --git a/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/0001-Check-for-musl-define-guard-before-redefining-sockle.patch b/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/0001-Check-for-musl-define-guard-before-redefining-sockle.patch deleted file mode 100644 index d7169495fa..0000000000 --- a/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/0001-Check-for-musl-define-guard-before-redefining-sockle.patch +++ /dev/null @@ -1,27 +0,0 @@ -From ac1657e11cbb0545bdf4d1124def8c013958ed7e Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Wed, 12 Jul 2017 18:08:51 -0700 -Subject: [PATCH] Check for musl define guard before redefining socklen_t - -musl uses __DEFINED_socklen_t so check for that as well -along with HAVE_socklen_t - -Signed-off-by: Khem Raj <raj.khem@gmail.com> - ---- - src/bench.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/bench.h b/src/bench.h -index 597d068..2ebdf5a 100644 ---- a/src/bench.h -+++ b/src/bench.h -@@ -77,7 +77,7 @@ typedef long long int64; - #endif /* HAVE_int64_t */ - #endif /* HAVE_int64 */ - --#ifndef HAVE_socklen_t -+#if !defined(HAVE_socklen_t) && !defined(__DEFINED_socklen_t) - typedef int socklen_t; - #endif - diff --git a/meta-oe/recipes-benchmark/lmbench/lmbench/0001-avoid-gcc-optimize-away-the-loops.patch b/meta-oe/recipes-benchmark/lmbench/lmbench/0001-avoid-gcc-optimize-away-the-loops.patch index b964bef1f0..ff926548b6 100644 --- a/meta-oe/recipes-benchmark/lmbench/lmbench/0001-avoid-gcc-optimize-away-the-loops.patch +++ b/meta-oe/recipes-benchmark/lmbench/lmbench/0001-avoid-gcc-optimize-away-the-loops.patch @@ -3,7 +3,7 @@ From: Roy Li <rongqing.li@windriver.com> Date: Thu, 5 May 2016 09:52:01 +0800 Subject: [PATCH] [PATCH] avoid gcc optimize-away the loops -Upstream-Status: pending +Upstream-Status: Pending Change expression used in do_integer_mul and do_uint64_mul benchmarks so GCC doesn't optimize-away the loops, other diff --git a/meta-oe/recipes-benchmark/lmbench/lmbench/0001-bench.h-Fix-typo-in-specifying-string.h.patch b/meta-oe/recipes-benchmark/lmbench/lmbench/0001-bench.h-Fix-typo-in-specifying-string.h.patch new file mode 100644 index 0000000000..e9220ecbdd --- /dev/null +++ b/meta-oe/recipes-benchmark/lmbench/lmbench/0001-bench.h-Fix-typo-in-specifying-string.h.patch @@ -0,0 +1,27 @@ +From 4bbedd25e74adb5cb181a9ae589adb2052ade630 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Wed, 31 Aug 2022 23:34:48 -0700 +Subject: [PATCH] bench.h: Fix typo in specifying string.h + +Upstream-Status: Pending +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + src/bench.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/bench.h b/src/bench.h +index 2ebdf5a..750bebf 100644 +--- a/src/bench.h ++++ b/src/bench.h +@@ -21,7 +21,7 @@ typedef unsigned char bool_t; + #include <signal.h> + #include <errno.h> + #ifndef WIN32 +-#include <strings.h> ++#include <string.h> + #endif + #include <sys/types.h> + #ifndef WIN32 +-- +2.37.3 + diff --git a/meta-oe/recipes-benchmark/lmbench/lmbench/0001-doc-Fix-typos-in-lat_unix_connect-manual-page.patch b/meta-oe/recipes-benchmark/lmbench/lmbench/0001-doc-Fix-typos-in-lat_unix_connect-manual-page.patch new file mode 100644 index 0000000000..9014f80ab6 --- /dev/null +++ b/meta-oe/recipes-benchmark/lmbench/lmbench/0001-doc-Fix-typos-in-lat_unix_connect-manual-page.patch @@ -0,0 +1,32 @@ +From 9bf2b363c5173c03adecf366f116415dbc559017 Mon Sep 17 00:00:00 2001 +From: Yanfei Xu <yanfei.xu@windriver.com> +Date: Tue, 23 Feb 2021 10:54:26 +0800 +Subject: [PATCH 1/2] doc: Fix typos in lat_unix_connect manual page + +Signed-off-by: Yanfei Xu <yanfei.xu@windriver.com> +--- +Upstream-Status: Pending + + doc/lat_unix_connect.8 | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/doc/lat_unix_connect.8 b/doc/lat_unix_connect.8 +index b42e9a4..5ab1a51 100644 +--- a/doc/lat_unix_connect.8 ++++ b/doc/lat_unix_connect.8 +@@ -25,9 +25,9 @@ is a client/server program that measures interprocess + connection latencies. The benchmark times the creation and connection of + an AF_UNIX socket to a local server. + .LP +-.B lat_connect +-has three forms of usage: as a server (-s), as a client (lat_connect), +-and as a shutdown (lat_connect -S). ++.B lat_unix_connect ++has three forms of usage: as a server (-s), as a client (lat_unix_connect), ++and as a shutdown (lat_unix_connect -S). + .SH OUTPUT + The reported time is in microseconds per connection. + Output format is like so +-- +2.27.0 + diff --git a/meta-oe/recipes-benchmark/lmbench/lmbench/0001-doc-Fix-typos-in-manual-pages.patch b/meta-oe/recipes-benchmark/lmbench/lmbench/0001-doc-Fix-typos-in-manual-pages.patch new file mode 100644 index 0000000000..b960a7d19f --- /dev/null +++ b/meta-oe/recipes-benchmark/lmbench/lmbench/0001-doc-Fix-typos-in-manual-pages.patch @@ -0,0 +1,102 @@ +From a8d86a2d994a008dab3c3ecad65528c0e5fc2cba Mon Sep 17 00:00:00 2001 +From: He Zhe <zhe.he@windriver.com> +Date: Fri, 22 Jan 2021 11:22:48 +0800 +Subject: [PATCH] doc: Fix typos in manual pages + +Signed-off-by: He Zhe <zhe.he@windriver.com> +--- +Upstream-Status: Pending + + doc/bw_mem.8 | 2 +- + doc/lat_fcntl.8 | 2 +- + doc/lat_fifo.8 | 2 +- + doc/lat_http.8 | 6 +++--- + doc/lat_select.8 | 2 +- + doc/lat_sig.8 | 2 +- + 6 files changed, 8 insertions(+), 8 deletions(-) + +diff --git a/doc/bw_mem.8 b/doc/bw_mem.8 +index 33df417..9e84d73 100644 +--- a/doc/bw_mem.8 ++++ b/doc/bw_mem.8 +@@ -3,7 +3,7 @@ + .SH NAME + bw_mem \- time memory bandwidth + .SH SYNOPSIS +-.B bw_mem_cp ++.B bw_mem + [ + .I "-P <parallelism>" + ] +diff --git a/doc/lat_fcntl.8 b/doc/lat_fcntl.8 +index cf3c93e..2e501d6 100644 +--- a/doc/lat_fcntl.8 ++++ b/doc/lat_fcntl.8 +@@ -3,7 +3,7 @@ + .SH NAME + lat_fcntl \- fcntl file locking benchmark + .SH SYNOPSIS +-.B lat_ctx ++.B lat_fcntl + [ + .I "-P <parallelism>" + ] +diff --git a/doc/lat_fifo.8 b/doc/lat_fifo.8 +index 65e5a08..90bc900 100644 +--- a/doc/lat_fifo.8 ++++ b/doc/lat_fifo.8 +@@ -3,7 +3,7 @@ + .SH NAME + lat_fifo \- FIFO benchmark + .SH SYNOPSIS +-.B lat_ctx ++.B lat_fifo + [ + .I "-P <parallelism>" + ] +diff --git a/doc/lat_http.8 b/doc/lat_http.8 +index a4bb459..99c5d4a 100644 +--- a/doc/lat_http.8 ++++ b/doc/lat_http.8 +@@ -1,9 +1,9 @@ + .\" $Id$ +-.TH LAT_FCNTL 8 "$Date$" "(c)1994-2000 Carl Staelin and Larry McVoy" "LMBENCH" ++.TH LAT_HTTP 8 "$Date$" "(c)1994-2000 Carl Staelin and Larry McVoy" "LMBENCH" + .SH NAME +-lat_fcntl \- fcntl file locking benchmark ++lat_http \- http GET request latency + .SH SYNOPSIS +-.B lat_ctx ++.B lat_http + [ + .I "-d" + ] +diff --git a/doc/lat_select.8 b/doc/lat_select.8 +index 03f83bf..e13499f 100644 +--- a/doc/lat_select.8 ++++ b/doc/lat_select.8 +@@ -3,7 +3,7 @@ + .SH NAME + lat_select \- select benchmark + .SH SYNOPSIS +-.B lat_ctx ++.B lat_select + [ + .I "-P <parallelism>" + ] +diff --git a/doc/lat_sig.8 b/doc/lat_sig.8 +index 91baf78..19a8838 100644 +--- a/doc/lat_sig.8 ++++ b/doc/lat_sig.8 +@@ -3,7 +3,7 @@ + .SH NAME + lat_sig \- select benchmark + .SH SYNOPSIS +-.B lat_ctx ++.B lat_sig + [ + .I "-P <parallelism>" + ] +-- +2.17.1 + diff --git a/meta-oe/recipes-benchmark/lmbench/lmbench/0001-lat_fifo-Fix-cleanup-sequence.patch b/meta-oe/recipes-benchmark/lmbench/lmbench/0001-lat_fifo-Fix-cleanup-sequence.patch new file mode 100644 index 0000000000..b46c5fae76 --- /dev/null +++ b/meta-oe/recipes-benchmark/lmbench/lmbench/0001-lat_fifo-Fix-cleanup-sequence.patch @@ -0,0 +1,44 @@ +From 78912c0ac5e090095a2f2bd6226e02cce949e72e Mon Sep 17 00:00:00 2001 +From: He Zhe <zhe.he@windriver.com> +Date: Fri, 22 Jan 2021 10:03:38 +0000 +Subject: [PATCH] lat_fifo: Fix cleanup sequence + +Files should be unlinked after all users exit. + +Signed-off-by: He Zhe <zhe.he@windriver.com> +--- +Upstream-Status: Pending + + src/lat_fifo.c | 12 ++++++------ + 1 file changed, 6 insertions(+), 6 deletions(-) + +diff --git a/src/lat_fifo.c b/src/lat_fifo.c +index c625161..85bb9d1 100644 +--- a/src/lat_fifo.c ++++ b/src/lat_fifo.c +@@ -120,16 +120,16 @@ cleanup(iter_t iterations, void * cookie) + + if (iterations) return; + +- unlink(state->filename1); +- unlink(state->filename2); +- close(state->wr); +- close(state->rd); +- + if (state->pid > 0) { +- kill(state->pid, 15); ++ kill(state->pid, SIGKILL); + waitpid(state->pid, NULL, 0); + state->pid = 0; + } ++ ++ unlink(state->filename1); ++ unlink(state->filename2); ++ close(state->wr); ++ close(state->rd); + } + + void +-- +2.29.2 + diff --git a/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/0001-lat_http.c-Add-printf-format.patch b/meta-oe/recipes-benchmark/lmbench/lmbench/0001-lat_http.c-Add-printf-format.patch index 943b3ec889..eaa4ad0814 100644 --- a/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/0001-lat_http.c-Add-printf-format.patch +++ b/meta-oe/recipes-benchmark/lmbench/lmbench/0001-lat_http.c-Add-printf-format.patch @@ -6,6 +6,8 @@ Subject: [PATCH] lat_http.c: Add printf format Signed-off-by: Khem Raj <raj.khem@gmail.com> --- +Upstream-Status: Pending + src/lat_http.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meta-oe/recipes-benchmark/lmbench/lmbench/0001-lmbench-Point-webpage-lm-to-target-directory.patch b/meta-oe/recipes-benchmark/lmbench/lmbench/0001-lmbench-Point-webpage-lm-to-target-directory.patch new file mode 100644 index 0000000000..7b713a3243 --- /dev/null +++ b/meta-oe/recipes-benchmark/lmbench/lmbench/0001-lmbench-Point-webpage-lm-to-target-directory.patch @@ -0,0 +1,79 @@ +From 353e8a62bf3cb5f1b9504efa16b8b974e93cac49 Mon Sep 17 00:00:00 2001 +From: He Zhe <zhe.he@windriver.com> +Date: Fri, 22 Jan 2021 10:58:41 +0800 +Subject: [PATCH] lmbench: Point webpage-lm to target directory + +As webpage-lm.tar has been copied to ${datadir}\lmbench. +Plus improve 'hello' copying in lmbench script. + +Signed-off-by: He Zhe <zhe.he@windriver.com> +--- +Upstream-Status: Pending + + scripts/lmbench | 18 +++++++++--------- + 1 file changed, 9 insertions(+), 9 deletions(-) + +diff --git a/scripts/lmbench b/scripts/lmbench +index 7a52cb1..82e36b6 100755 +--- a/scripts/lmbench ++++ b/scripts/lmbench +@@ -167,7 +167,7 @@ if [ X$BENCHMARK_OS = XYES -o X$BENCHMARK_UNIX = XYES ]; then + lat_unix -P $SYNC_MAX + fi + if [ X$BENCHMARK_OS = XYES -o X$BENCHMARK_PROC = XYES ]; then +- cp hello /tmp/hello ++ cp `which hello` /tmp/hello + for i in fork exec shell + do lat_proc -P $SYNC_MAX $i + done +@@ -237,14 +237,14 @@ fi + + date >> ${OUTPUT} + echo Local networking >> ${OUTPUT} +-if [ ! -d ../../src/webpage-lm ] +-then (cd ../../src && tar xf webpage-lm.tar) ++if [ ! -d /usr/share/lmbench/webpage-lm ] ++then (cd /usr/share/lmbench && tar xf webpage-lm.tar) + sync + sleep 1 + fi + SERVERS="lat_udp lat_tcp lat_rpc lat_connect bw_tcp" + for server in $SERVERS; do $server -s; done +-DOCROOT=../../src/webpage-lm lmhttp 8008 & ++DOCROOT=/usr/share/lmbench/webpage-lm lmhttp 8008 & + sleep 2; + + if [ X$BENCHMARK_OS = XYES -o X$BENCHMARK_UDP = XYES ]; then +@@ -280,15 +280,15 @@ bw_tcp -S localhost + + if [ X$BENCHMARK_OS = XYES -o X$BENCHMARK_HTTP = XYES ]; then + # I want a hot cache number +- lat_http localhost 8008 < ../../src/webpage-lm/URLS > /dev/null 2>&1 +- lat_http localhost 8008 < ../../src/webpage-lm/URLS ++ lat_http localhost 8008 < /usr/share/lmbench/webpage-lm/URLS > /dev/null 2>&1 ++ lat_http localhost 8008 < /usr/share/lmbench/webpage-lm/URLS + fi + lat_http -S localhost 8008 + + for remote in $REMOTE + do + echo Networking to $remote >> ${OUTPUT} +- $RCP $SERVERS lmhttp ../../src/webpage-lm.tar ${remote}:/tmp ++ $RCP $SERVERS lmhttp /usr/share/lmbench/webpage-lm.tar ${remote}:/tmp + for server in $SERVERS + do $RSH $remote -n /tmp/$server -s & + done +@@ -327,8 +327,8 @@ do + + if [ X$BENCHMARK_OS = XYES -o X$BENCHMARK_HTTP = XYES ]; then + # I want a hot cache number +- lat_http $remote 8008 < ../../src/webpage-lm/URLS > /dev/null 2>&1 +- lat_http $remote 8008 < ../../src/webpage-lm/URLS ++ lat_http $remote 8008 < /usr/share/lmbench/webpage-lm/URLS > /dev/null 2>&1 ++ lat_http $remote 8008 < /usr/share/lmbench/webpage-lm/URLS + fi + lat_http -S $remote 8008 + +-- +2.17.1 + diff --git a/meta-oe/recipes-benchmark/lmbench/lmbench/0001-scripts-build-Fix-the-tests-to-build-with-clang15.patch b/meta-oe/recipes-benchmark/lmbench/lmbench/0001-scripts-build-Fix-the-tests-to-build-with-clang15.patch new file mode 100644 index 0000000000..f07cef6b38 --- /dev/null +++ b/meta-oe/recipes-benchmark/lmbench/lmbench/0001-scripts-build-Fix-the-tests-to-build-with-clang15.patch @@ -0,0 +1,239 @@ +From bcc6816b92ecf409357865589069a82883d589f7 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Tue, 6 Sep 2022 22:53:51 -0700 +Subject: [PATCH] scripts/build: Fix the tests to build with clang15 + +Upstream-Status: Pending +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + scripts/build | 50 +++++++++++++++++++++++++------------------------- + 1 file changed, 25 insertions(+), 25 deletions(-) + +--- a/scripts/build ++++ b/scripts/build +@@ -21,7 +21,7 @@ trap 'rm -f ${BASE}$$.s ${BASE}$$.c ${BA + LDLIBS="$LDLIBS -lm" + + # check for HP-UX's ANSI compiler +-echo "main(int ac, char *av[]) { int i; }" > ${BASE}$$.c ++echo "int main(int ac, char *av[]) { int i; }" > ${BASE}$$.c + if ${CC} ${CFLAGS} -o ${BASE}$$ ${BASE}$$.c 1>${NULL} 2>${NULL} + then + true; +@@ -39,7 +39,7 @@ arch=`echo $OS | awk -F- '{print $1;}'` + if [ "X$CC" = "Xcc" -a "X$arch" = "Xia64" ] + then + echo "#include <stdlib.h>" > ${BASE}$$.c +- echo "main(int ac, char *av[])" >> ${BASE}$$.c ++ echo "int main(int ac, char *av[])" >> ${BASE}$$.c + echo "{ long* p = (long*)malloc(sizeof(long));" >> ${BASE}$$.c + echo "*p = 0; exit((int)*p); }" >> ${BASE}$$.c + ${CC} ${CFLAGS} +DD64 -o ${BASE}$$ ${BASE}$$.c 1>${NULL} 2>${NULL} \ +@@ -51,14 +51,14 @@ fi + + # check for bcopy (optionally set the SYS5 flag) + echo "#include <string.h>" > ${BASE}$$.c +-echo "main() { char a[256], b[256]; bcopy(a, b, 256); }" >> ${BASE}$$.c ++echo "int main() { char a[256], b[256]; bcopy(a, b, 256); }" >> ${BASE}$$.c + ${CC} ${CFLAGS} -o ${BASE}$$ ${BASE}$$.c ${LDLIBS} 1>${NULL} 2>${NULL} \ + || CFLAGS="${CFLAGS} -DSYS5" + rm -f ${BASE}$$ ${BASE}$$.o ${BASE}$$.c + + # check for valloc + echo "#include <stdlib.h>" > ${BASE}$$.c +-echo "main() { char* buf = valloc(123); }" >> ${BASE}$$.c ++echo "int main() { char* buf = valloc(123); }" >> ${BASE}$$.c + ${CC} ${CFLAGS} -o ${BASE}$$ ${BASE}$$.c ${LDLIBS} 1>${NULL} 2>${NULL} \ + || CFLAGS="${CFLAGS} -Dvalloc=malloc" + rm -f ${BASE}$$ ${BASE}$$.o ${BASE}$$.c +@@ -67,7 +67,7 @@ rm -f ${BASE}$$ ${BASE}$$.o ${BASE}$$.c + echo "#include <stdlib.h>" > ${BASE}$$.c + echo "#include <sys/types.h>" >> ${BASE}$$.c + echo "#include <unistd.h>" >> ${BASE}$$.c +-echo "main() { off64_t off; }" >> ${BASE}$$.c ++echo "int main() { off64_t off; }" >> ${BASE}$$.c + ${CC} ${CFLAGS} -o ${BASE}$$ ${BASE}$$.c ${LDLIBS} 1>${NULL} 2>${NULL} \ + && CFLAGS="${CFLAGS} -DHAVE_off64_t" + rm -f ${BASE}$$ ${BASE}$$.o ${BASE}$$.c +@@ -76,7 +76,7 @@ rm -f ${BASE}$$ ${BASE}$$.o ${BASE}$$.c + echo "#include <stdlib.h>" > ${BASE}$$.c + echo "#include <sys/types.h>" >> ${BASE}$$.c + echo "#include <unistd.h>" >> ${BASE}$$.c +-echo "main() { int fd = 0; off64_t off = 0; off = lseek64(fd, off, SEEK_SET); }" >> ${BASE}$$.c ++echo "int main() { int fd = 0; off64_t off = 0; off = lseek64(fd, off, SEEK_SET); }" >> ${BASE}$$.c + ${CC} ${CFLAGS} -o ${BASE}$$ ${BASE}$$.c ${LDLIBS} 1>${NULL} 2>${NULL} \ + && CFLAGS="${CFLAGS} -DHAVE_lseek64" + rm -f ${BASE}$$ ${BASE}$$.o ${BASE}$$.c +@@ -88,7 +88,7 @@ echo "#include <sys/resource.h>" >> ${BA + echo "#ifndef RUSAGE_SELF" >> ${BASE}$$.c + echo "#define RUSAGE_SELF 0" >> ${BASE}$$.c + echo "#endif /* RUSAGE_SELF */" >> ${BASE}$$.c +-echo "main() { struct rusage ru; getrusage(RUSAGE_SELF, &ru); }" >> ${BASE}$$.c ++echo "int main() { struct rusage ru; getrusage(RUSAGE_SELF, &ru); }" >> ${BASE}$$.c + ${CC} ${CFLAGS} -o ${BASE}$$ ${BASE}$$.c ${LDLIBS} 1>${NULL} 2>${NULL} \ + && CFLAGS="${CFLAGS} -DRUSAGE" + rm -f ${BASE}$$ ${BASE}$$.o ${BASE}$$.c +@@ -125,24 +125,24 @@ fi + rm -f ${BASE}$$ ${BASE}$$.o ${BASE}$$.c + + # check for -lrpc (cygwin/Windows) +-echo "extern int pmap_set(); main() { pmap_set(); }" >${BASE}$$.c ++echo "extern int pmap_set(void); int main() { pmap_set(); }" >${BASE}$$.c + if ${CC} ${CFLAGS} -o ${BASE}$$ ${BASE}$$.c ${LDLIBS} 1>${NULL} 2>${NULL}; then + true; +-else +- ${CC} ${CFLAGS} -o ${BASE}$$ ${BASE}$$.c ${LDLIBS} -lrpc 1>${NULL} 2>${NULL} \ +- && LDLIBS="${LDLIBS} -lrpc" ++elif ${CC} ${CFLAGS} -o ${BASE}$$ ${BASE}$$.c ${LDLIBS} -lrpc 1>${NULL} 2>${NULL}; then ++ LDLIBS="${LDLIBS} -lrpc" ++else ${CC} ${CFLAGS} -o ${BASE}$$ ${BASE}$$.c ${LDLIBS} -ltirpc 1>${NULL} 2>${NULL} && LDLIBS="${LDLIBS} -ltirpc" + fi + rm -f ${BASE}$$ ${BASE}$$.o ${BASE}$$.c + + # check for OSs that have S_IFFIFO instead of S_IFIFO + echo "#include <sys/stat.h>" > ${BASE}$$.c +-echo "main() { return (S_IFIFO); }" >> ${BASE}$$.c ++echo "int main() { return (S_IFIFO); }" >> ${BASE}$$.c + if ${CC} ${CFLAGS} -o ${BASE}$$ ${BASE}$$.c ${LDLIBS} 1>${NULL} 2>${NULL}; then + true; + else + rm -f ${BASE}$$ ${BASE}$$.o ${BASE}$$.c + echo "#include <sys/stat.h>" > ${BASE}$$.c +- echo "main() { return (S_IFFIFO); }" >> ${BASE}$$.c ++ echo "int main() { return (S_IFFIFO); }" >> ${BASE}$$.c + ${CC} ${CFLAGS} -o ${BASE}$$ ${BASE}$$.c ${LDLIBS} 1>${NULL} 2>${NULL} \ + || CFLAGS="${CFLAGS} -DS_IFIFO=S_IFFIFO" + fi +@@ -151,7 +151,7 @@ rm -f ${BASE}$$ ${BASE}$$.o ${BASE}$$.c + # check that we have uint + echo "#include <stdlib.h>" > ${BASE}$$.c + echo "#include <sys/types.h>" >> ${BASE}$$.c +-echo "main() { uint i = 0; return (i); }" >> ${BASE}$$.c ++echo "int main() { uint i = 0; return (i); }" >> ${BASE}$$.c + ${CC} ${CFLAGS} -o ${BASE}$$ ${BASE}$$.c ${LDLIBS} 1>${NULL} 2>${NULL} \ + && CFLAGS="${CFLAGS} -DHAVE_uint=1"; + rm -f ${BASE}$$ ${BASE}$$.o ${BASE}$$.c +@@ -161,7 +161,7 @@ HAVE_uint64=0 + echo "#include <stdlib.h>" > ${BASE}$$.c + echo "#include <sys/types.h>" >> ${BASE}$$.c + echo "#include <rpc/types.h>" >> ${BASE}$$.c +-echo "main() { uint64 i = 0; return (int)(i); }" >> ${BASE}$$.c ++echo "int main() { uint64 i = 0; return (int)(i); }" >> ${BASE}$$.c + ${CC} ${CFLAGS} -o ${BASE}$$ ${BASE}$$.c ${LDLIBS} 1>${NULL} 2>${NULL} \ + && CFLAGS="${CFLAGS} -DHAVE_uint64=1" && HAVE_uint64=1; + rm -f ${BASE}$$ ${BASE}$$.o ${BASE}$$.c +@@ -170,7 +170,7 @@ rm -f ${BASE}$$ ${BASE}$$.o ${BASE}$$.c + if [ ${HAVE_uint64} = 0 ]; then + echo "#include <stdlib.h>" > ${BASE}$$.c + echo "#include <sys/types.h>" >> ${BASE}$$.c +- echo "main() { uint64_t i = 0; return (int)(i); }" >> ${BASE}$$.c ++ echo "int main() { uint64_t i = 0; return (int)(i); }" >> ${BASE}$$.c + ${CC} ${CFLAGS} -o ${BASE}$$ ${BASE}$$.c ${LDLIBS} 1>${NULL} 2>${NULL} \ + && CFLAGS="${CFLAGS} -DHAVE_uint64_t=1"; + rm -f ${BASE}$$ ${BASE}$$.o ${BASE}$$.c +@@ -181,7 +181,7 @@ HAVE_int64=0 + echo "#include <stdlib.h>" > ${BASE}$$.c + echo "#include <sys/types.h>" >> ${BASE}$$.c + echo "#include <rpc/types.h>" >> ${BASE}$$.c +-echo "main() { int64 i = 0; return (int)(i); }" >> ${BASE}$$.c ++echo "int main() { int64 i = 0; return (int)(i); }" >> ${BASE}$$.c + ${CC} ${CFLAGS} -o ${BASE}$$ ${BASE}$$.c ${LDLIBS} 1>${NULL} 2>${NULL} \ + && CFLAGS="${CFLAGS} -DHAVE_int64=1" && HAVE_int64=1; + rm -f ${BASE}$$ ${BASE}$$.o ${BASE}$$.c +@@ -190,7 +190,7 @@ rm -f ${BASE}$$ ${BASE}$$.o ${BASE}$$.c + if [ ${HAVE_int64} = 0 ]; then + echo "#include <stdlib.h>" > ${BASE}$$.c + echo "#include <sys/types.h>" >> ${BASE}$$.c +- echo "main() { int64_t i = 0; return (int)(i); }" >> ${BASE}$$.c ++ echo "int main() { int64_t i = 0; return (int)(i); }" >> ${BASE}$$.c + ${CC} ${CFLAGS} -o ${BASE}$$ ${BASE}$$.c ${LDLIBS} 1>${NULL} 2>${NULL} \ + && CFLAGS="${CFLAGS} -DHAVE_int64_t=1"; + rm -f ${BASE}$$ ${BASE}$$.o ${BASE}$$.c +@@ -209,7 +209,7 @@ rm -f ${BASE}$$ ${BASE}$$.o ${BASE}$$.c + echo "#include <stdlib.h>" > ${BASE}$$.c + echo "#include <sys/types.h>" >> ${BASE}$$.c + echo "#include <sys/socket.h>" >> ${BASE}$$.c +-echo "main() { int s; struct sockaddr dest; socklen_t len; getsockname(s, &dest, &len); }" >> ${BASE}$$.c ++echo "int main() { int s; struct sockaddr dest; socklen_t len; getsockname(s, &dest, &len); }" >> ${BASE}$$.c + ${CC} ${CFLAGS} -o ${BASE}$$ ${BASE}$$.c ${LDLIBS} 1>${NULL} 2>${NULL} \ + && CFLAGS="${CFLAGS} -DHAVE_socklen_t" + rm -f ${BASE}$$ ${BASE}$$.o ${BASE}$$.c +@@ -217,7 +217,7 @@ rm -f ${BASE}$$ ${BASE}$$.o ${BASE}$$.c + # check that we have drand48 and srand48 + HAVE_RANDOM=0 + echo "#include <stdlib.h>" > ${BASE}$$.c +-echo "main() { srand48(973); return (int)(1.0E9 * drand48()); }" >> ${BASE}$$.c ++echo "int main() { srand48(973); return (int)(1.0E9 * drand48()); }" >> ${BASE}$$.c + if ${CC} ${CFLAGS} -o ${BASE}$$ ${BASE}$$.c ${LDLIBS} 1>${NULL} 2>${NULL}; then + CFLAGS="${CFLAGS} -DHAVE_DRAND48" + HAVE_RANDOM=1 +@@ -226,7 +226,7 @@ rm -f ${BASE}$$ ${BASE}$$.o ${BASE}$$.c + + if [ ${HAVE_RANDOM} -eq 0 ]; then + echo "#include <stdlib.h>" > ${BASE}$$.c +- echo "main() { srand(973); return (10 * rand()) / RAND_MAX; }" >> ${BASE}$$.c ++ echo "int main() { srand(973); return (10 * rand()) / RAND_MAX; }" >> ${BASE}$$.c + if ${CC} ${CFLAGS} -o ${BASE}$$ ${BASE}$$.c ${LDLIBS} 1>${NULL} 2>${NULL}; then + CFLAGS="${CFLAGS} -DHAVE_RAND" + HAVE_RANDOM=1 +@@ -236,7 +236,7 @@ fi + + if [ ${HAVE_RANDOM} -eq 0 ]; then + echo "#include <stdlib.h>" > ${BASE}$$.c +- echo "main() { srandom(973); return (10 * random()) / RAND_MAX; }" >> ${BASE}$$.c ++ echo "int main() { srandom(973); return (10 * random()) / RAND_MAX; }" >> ${BASE}$$.c + if ${CC} ${CFLAGS} -o ${BASE}$$ ${BASE}$$.c ${LDLIBS} 1>${NULL} 2>${NULL}; then + CFLAGS="${CFLAGS} -DHAVE_RANDOM" + HAVE_RANDOM=1 +@@ -247,7 +247,7 @@ fi + # check that we have sysmp + echo "#include <sys/types.h>" > ${BASE}$$.c + echo "#include <sys/sysmp.h>" >> ${BASE}$$.c +-echo "main() { return (int)sysmp(MP_NPROCS); }" >> ${BASE}$$.c ++echo "int main() { return (int)sysmp(MP_NPROCS); }" >> ${BASE}$$.c + ${CC} ${CFLAGS} -o ${BASE}$$ ${BASE}$$.c ${LDLIBS} 1>${NULL} 2>${NULL} \ + && CFLAGS="${CFLAGS} -DHAVE_SYSMP=1"; + rm -f ${BASE}$$ ${BASE}$$.o ${BASE}$$.c +@@ -257,7 +257,7 @@ echo "#include <stdlib.h>" > ${BASE}$$.c + echo "#include <unistd.h>" >> ${BASE}$$.c + echo "#include <sys/types.h>" >> ${BASE}$$.c + echo "#include <sys/processor.h>" >> ${BASE}$$.c +-echo "main() { return bindprocessor(BINDPROCESS, getpid(), 0); }" >> ${BASE}$$.c ++echo "int main() { return bindprocessor(BINDPROCESS, getpid(), 0); }" >> ${BASE}$$.c + ${CC} ${CFLAGS} -o ${BASE}$$ ${BASE}$$.c ${LDLIBS} 1>${NULL} 2>${NULL} \ + && CFLAGS="${CFLAGS} -DHAVE_BINDPROCESSOR=1"; + rm -f ${BASE}$$ ${BASE}$$.o ${BASE}$$.c +@@ -267,16 +267,17 @@ echo "#include <stdlib.h>" > ${BASE}$$.c + echo "#include <sys/types.h>" >> ${BASE}$$.c + echo "#include <sys/processor.h>" >> ${BASE}$$.c + echo "#include <sys/procset.h>" >> ${BASE}$$.c +-echo "main() { return processor(P_PID, P_MYPID, 0, NULL); }" >> ${BASE}$$.c ++echo "int main() { return processor(P_PID, P_MYPID, 0, NULL); }" >> ${BASE}$$.c + ${CC} ${CFLAGS} -o ${BASE}$$ ${BASE}$$.c ${LDLIBS} 1>${NULL} 2>${NULL} \ + && CFLAGS="${CFLAGS} -DHAVE_BINDPROCESSOR=1"; + rm -f ${BASE}$$ ${BASE}$$.o ${BASE}$$.c + + # check that we have sched_setaffinity +-echo "#include <stdlib.h>" > ${BASE}$$.c ++echo "#define _GNU_SOURCE" > ${BASE}$$.c ++echo "#include <stdlib.h>" >> ${BASE}$$.c + echo "#include <unistd.h>" >> ${BASE}$$.c + echo "#include <sched.h>" >> ${BASE}$$.c +-echo "main() { unsigned long mask = 1; return sched_setaffinity(0, sizeof(unsigned long), &mask); }" >> ${BASE}$$.c ++echo "int main() { unsigned long mask = 1; return sched_setaffinity(0, sizeof(unsigned long), &mask); }" >> ${BASE}$$.c + ${CC} ${CFLAGS} -o ${BASE}$$ ${BASE}$$.c ${LDLIBS} 1>${NULL} 2>${NULL} \ + && CFLAGS="${CFLAGS} -DHAVE_SCHED_SETAFFINITY=1"; + rm -f ${BASE}$$ ${BASE}$$.o ${BASE}$$.c +@@ -285,4 +286,4 @@ rm -f ${BASE}$$ ${BASE}$$.o ${BASE}$$.c + if [ ! -d ${BINDIR} ]; then mkdir -p ${BINDIR}; fi + + # now go ahead and build everything! +-${MAKE} OS="${OS}" CC="${CC}" CFLAGS="${CFLAGS}" LDLIBS="${LDLIBS}" O="${BINDIR}" $* ++${MAKE} OS="${OS}" CC="${CC}" CFLAGS="${CFLAGS}" LDLIBS="${LDLIBS}" O="${BINDIR}" ${EXTRA_OEMAKE} $* +--- a/src/lib_sched.c ++++ b/src/lib_sched.c +@@ -1,3 +1,4 @@ ++#define _GNU_SOURCE + #include "bench.h" + + /* #define _DEBUG */ diff --git a/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/0001-src-Makefile-use-libdir-instead-of-hardcoded-lib.patch b/meta-oe/recipes-benchmark/lmbench/lmbench/0001-src-Makefile-use-libdir-instead-of-hardcoded-lib.patch index 04cef960fc..04cef960fc 100644 --- a/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/0001-src-Makefile-use-libdir-instead-of-hardcoded-lib.patch +++ b/meta-oe/recipes-benchmark/lmbench/lmbench/0001-src-Makefile-use-libdir-instead-of-hardcoded-lib.patch diff --git a/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/0002-build-Adjust-CFLAGS-LDFLAGS-to-append-values-passed-.patch b/meta-oe/recipes-benchmark/lmbench/lmbench/0002-build-Adjust-CFLAGS-LDFLAGS-to-append-values-passed-.patch index 353d80b3b7..096726cc23 100644 --- a/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/0002-build-Adjust-CFLAGS-LDFLAGS-to-append-values-passed-.patch +++ b/meta-oe/recipes-benchmark/lmbench/lmbench/0002-build-Adjust-CFLAGS-LDFLAGS-to-append-values-passed-.patch @@ -9,6 +9,8 @@ to link in librirpc, make room for those changes to take effect Signed-off-by: Khem Raj <raj.khem@gmail.com> --- +Upstream-Status: Pending + scripts/build | 2 +- src/Makefile | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) @@ -22,7 +24,7 @@ index 34a1371..3786741 100755 trap 'rm -f ${BASE}$$.s ${BASE}$$.c ${BASE}$$.o ${BASE}$$; exit 1' 1 2 15 -LDLIBS=-lm -+LDLIBS+=-lm ++LDLIBS="$LDLIBS -lm" # check for HP-UX's ANSI compiler echo "main(int ac, char *av[]) { int i; }" > ${BASE}$$.c diff --git a/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/fix-lmbench-memory-check-failure.patch b/meta-oe/recipes-benchmark/lmbench/lmbench/fix-lmbench-memory-check-failure.patch index cbab5c424e..0274bc32af 100644 --- a/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/fix-lmbench-memory-check-failure.patch +++ b/meta-oe/recipes-benchmark/lmbench/lmbench/fix-lmbench-memory-check-failure.patch @@ -24,7 +24,7 @@ Signed-off-by: Fupan Li <fupan.li@windriver.com> Add and reword above comments -Upstream-status: inappropriate [ configuration ] +Upstream-Status: Inappropriate [ configuration ] Signed-off-by: Mark Hatle <mark.hatle@windriver.com> diff --git a/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/lmbench_result_html_report.patch b/meta-oe/recipes-benchmark/lmbench/lmbench/lmbench_result_html_report.patch index 30708c81db..ae2443476a 100644 --- a/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/lmbench_result_html_report.patch +++ b/meta-oe/recipes-benchmark/lmbench/lmbench/lmbench_result_html_report.patch @@ -13,7 +13,7 @@ Signed-off-by: Fupan Li <fupan.li@windriver.com> Reworded patch description. -Upstream-status: inappropriate [ configuration ] +Upstream-Status: Inappropriate [ configuration ] Signed-off-by: Mark Hatle <mark.hatle@windriver.com> diff --git a/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/obey-ranlib.patch b/meta-oe/recipes-benchmark/lmbench/lmbench/obey-ranlib.patch index fa5e6dbda3..fa5e6dbda3 100644 --- a/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/obey-ranlib.patch +++ b/meta-oe/recipes-benchmark/lmbench/lmbench/obey-ranlib.patch diff --git a/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/update-config-script.patch b/meta-oe/recipes-benchmark/lmbench/lmbench/update-config-script.patch index 44bc7bbcde..44bc7bbcde 100644 --- a/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/update-config-script.patch +++ b/meta-oe/recipes-benchmark/lmbench/lmbench/update-config-script.patch diff --git a/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/update-results-script.patch b/meta-oe/recipes-benchmark/lmbench/lmbench/update-results-script.patch index 31c4aecbbe..31c4aecbbe 100644 --- a/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/update-results-script.patch +++ b/meta-oe/recipes-benchmark/lmbench/lmbench/update-results-script.patch diff --git a/meta-oe/recipes-benchmark/lmbench/lmbench_3.0-a9.bb b/meta-oe/recipes-benchmark/lmbench/lmbench_3.0-a9.bb index 7e20b7da65..57f73eedc7 100644 --- a/meta-oe/recipes-benchmark/lmbench/lmbench_3.0-a9.bb +++ b/meta-oe/recipes-benchmark/lmbench/lmbench_3.0-a9.bb @@ -1,17 +1,15 @@ SUMMARY = "Tools for performance analysis" HOMEPAGE = "http://lmbench.sourceforge.net/" SECTION = "console/utils" -LICENSE = "GPLv2 & GPL-2.0-with-lmbench-restriction" +LICENSE = "GPL-2.0-only & GPL-2.0-with-lmbench-restriction" LIC_FILES_CHKSUM = "file://COPYING;md5=8ca43cbc842c2336e835926c2166c28b \ file://COPYING-2;md5=8e9aee2ccc75d61d107e43794a25cdf9" -inherit autotools-brokensep +inherit autotools-brokensep update-alternatives DEPENDS += "libtirpc" CFLAGS += "-I${STAGING_INCDIR}/tirpc" -LDLIBS += " -ltirpc " -PR = "r2" SRC_URI = "${SOURCEFORGE_MIRROR}/lmbench/lmbench-${PV}.tgz \ file://lmbench-run \ @@ -23,9 +21,14 @@ SRC_URI = "${SOURCEFORGE_MIRROR}/lmbench/lmbench-${PV}.tgz \ file://fix-lmbench-memory-check-failure.patch \ file://0001-avoid-gcc-optimize-away-the-loops.patch \ file://0001-lat_http.c-Add-printf-format.patch \ - file://0001-Check-for-musl-define-guard-before-redefining-sockle.patch \ file://0002-build-Adjust-CFLAGS-LDFLAGS-to-append-values-passed-.patch \ file://0001-src-Makefile-use-libdir-instead-of-hardcoded-lib.patch \ + file://0001-lmbench-Point-webpage-lm-to-target-directory.patch \ + file://0001-doc-Fix-typos-in-manual-pages.patch \ + file://0001-lat_fifo-Fix-cleanup-sequence.patch \ + file://0001-doc-Fix-typos-in-lat_unix_connect-manual-page.patch \ + file://0001-bench.h-Fix-typo-in-specifying-string.h.patch \ + file://0001-scripts-build-Fix-the-tests-to-build-with-clang15.patch \ " SRC_URI[md5sum] = "b3351a3294db66a72e2864a199d37cbf" SRC_URI[sha256sum] = "cbd5777d15f44eab7666dcac418054c3c09df99826961a397d9acf43d8a2a551" @@ -33,8 +36,11 @@ SRC_URI[sha256sum] = "cbd5777d15f44eab7666dcac418054c3c09df99826961a397d9acf43d8 UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/lmbench/files/development/" UPSTREAM_CHECK_REGEX = "lmbench-(?P<pver>\d+(\.\d+)+-[a-z]+\d+)" +export OS = "${TARGET_SYS}" +export TARGET = "${TARGET_OS}" + EXTRA_OEMAKE = 'CC="${CC}" AR="${AR}" RANLIB="${RANLIB}" CFLAGS="${CFLAGS}" \ - LDFLAGS="${LDFLAGS}" LDLIBS="${LDLIBS}" LD="${LD}" OS="${TARGET_SYS}" \ + LDFLAGS="${LDFLAGS}" LD="${LD}" OS="${TARGET_SYS}" \ TARGET="${TARGET_OS}" BASE="${prefix}" MANDIR="${mandir}"' do_configure() { @@ -49,7 +55,7 @@ do_compile () { CFLAGS="${CFLAGS} -DHAVE_uint" fi install -d ${S}/bin/${TARGET_SYS} - oe_runmake -C src + ${S}/scripts/build } do_install () { @@ -70,14 +76,16 @@ do_install () { -C src install mv ${D}${bindir}/line ${D}${bindir}/lm_line install -m 0755 ${WORKDIR}/lmbench-run ${D}${bindir}/ + install -m 0755 ${S}/bin/${TARGET_SYS}/cache ${D}${bindir}/ sed -i -e 's,^SHAREDIR=.*$,SHAREDIR=${datadir}/${BPN},;' \ -e 's,^CONFIG=.*$,CONFIG=`$SCRIPTSDIR/config`,;' \ ${D}${bindir}/lmbench-run install -m 0755 ${S}/scripts/lmbench ${D}${bindir} install -m 0755 ${S}/scripts/* ${D}${datadir}/lmbench/scripts + install -m 0644 ${S}/src/webpage-lm.tar ${D}${datadir}/lmbench } -pkg_postinst_${PN} () { +pkg_postinst:${PN} () { if [ -z "$D" ]; then if command -v systemd-tmpfiles >/dev/null; then systemd-tmpfiles --create ${sysconfdir}/tmpfiles.d/lmbench.conf @@ -87,5 +95,9 @@ pkg_postinst_${PN} () { fi } -RDEPENDS_${PN} = "perl" -FILES_${PN} += "${datadir}/lmbench" +RDEPENDS:${PN} = "perl" +FILES:${PN} += "${datadir}/lmbench" + +ALTERNATIVE:${PN} = "stream hello" +ALTERNATIVE_LINK_NAME[stream] = "${bindir}/stream" +ALTERNATIVE_LINK_NAME[hello] = "${bindir}/hello" diff --git a/meta-oe/recipes-benchmark/mbw/mbw_2.0.bb b/meta-oe/recipes-benchmark/mbw/mbw_2.0.bb new file mode 100644 index 0000000000..bb8c4625d5 --- /dev/null +++ b/meta-oe/recipes-benchmark/mbw/mbw_2.0.bb @@ -0,0 +1,16 @@ +SUMMARY = "MBW determines the copy memory bandwidth available to userspace programs" +HOMEPAGE = "http://github.com/raas/mbw" +SECTION = "console/tests" +LICENSE = "GPL-3.0-or-later" +LIC_FILES_CHKSUM = "file://mbw.spec;beginline=1;endline=10;md5=9ead6bd5826678fcfe229a3cf7257c56" + +SRC_URI = "git://github.com/raas/${BPN}.git;branch=master;protocol=https" + +SRCREV = "c3155b544a5065e8235508059c6512af6c46bd4d" + +S = "${WORKDIR}/git" + +do_install() { + install -d ${D}${bindir} + install -m 0755 ${B}/mbw ${D}${bindir} +} diff --git a/meta-oe/recipes-benchmark/memtester/files/Makefile.patch b/meta-oe/recipes-benchmark/memtester/files/Makefile.patch index 971e52ac7f..c6da3b7059 100644 --- a/meta-oe/recipes-benchmark/memtester/files/Makefile.patch +++ b/meta-oe/recipes-benchmark/memtester/files/Makefile.patch @@ -5,6 +5,8 @@ Subject: [PATCH] memtester: Added patch to Makefile to change no-longer-supporte Signed-off-by: Joel A Fernandes <joelagnel@ti.com> --- +Upstream-Status: Pending + Makefile | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/meta-oe/recipes-benchmark/memtester/memtester_4.3.0.bb b/meta-oe/recipes-benchmark/memtester/memtester_4.6.0.bb index 0964c04874..42cee1108d 100644 --- a/meta-oe/recipes-benchmark/memtester/memtester_4.3.0.bb +++ b/meta-oe/recipes-benchmark/memtester/memtester_4.6.0.bb @@ -1,15 +1,14 @@ SUMMARY = "Utility to test for faulty memory subsystem" HOMEPAGE = "http://pyropus.ca/software/memtester/" SECTION = "console/utils" -LICENSE = "GPLv2" +LICENSE = "GPL-2.0-only" LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3" -SRC_URI = "http://pyropus.ca/software/memtester/old-versions/${BP}.tar.gz" -SRC_URI += "file://Makefile.patch" - -SRC_URI[md5sum] = "598f41b7308e1f736164bca3ab84ddbe" -SRC_URI[sha256sum] = "f9dfe2fd737c38fad6535bbab327da9a21f7ce4ea6f18c7b3339adef6bf5fd88" +SRC_URI = "http://pyropus.ca/software/memtester/old-versions/${BP}.tar.gz \ + file://Makefile.patch \ + " +SRC_URI[sha256sum] = "c9fe4eb7e80c8cef5202f9065c4c0682f5616647c0455e916a5700f98e3dbb2e" do_compile () { echo '${CC} ${CFLAGS} -DPOSIX -c' > conf-cc diff --git a/meta-oe/recipes-benchmark/phoronix-test-suite/files/CVE-2022-40704.patch b/meta-oe/recipes-benchmark/phoronix-test-suite/files/CVE-2022-40704.patch new file mode 100644 index 0000000000..8b6405b4ad --- /dev/null +++ b/meta-oe/recipes-benchmark/phoronix-test-suite/files/CVE-2022-40704.patch @@ -0,0 +1,46 @@ +From d3880d9d3ba795138444da83f1153c3c3ac27640 Mon Sep 17 00:00:00 2001 +From: Michael Larabel <michael@phoronix.com> +Date: Sat, 23 Jul 2022 07:32:43 -0500 +Subject: [PATCH] phoromatic: Explicitly check both $_GET abd $_POST in + phoromatic_quit_if_invalid_input_found() + +Fixes: https://github.com/phoronix-test-suite/phoronix-test-suite/issues/650#issuecomment-1193116678 + +Upstream-Status: Backport +CVE: CVE-2022-40704 + +Reference to upstream patch: +https://github.com/phoronix-test-suite/phoronix-test-suite/commit/d3880d9d3ba795138444da83f1153c3c3ac27640 + +Signed-off-by: Li Wang <li.wang@windriver.com> +--- + pts-core/phoromatic/phoromatic_functions.php | 15 +++++++++++++-- + 1 file changed, 13 insertions(+), 2 deletions(-) + +diff --git a/pts-core/phoromatic/phoromatic_functions.php b/pts-core/phoromatic/phoromatic_functions.php +index 74ccc5444c..c2313dcdea 100644 +--- a/pts-core/phoromatic/phoromatic_functions.php ++++ b/pts-core/phoromatic/phoromatic_functions.php +@@ -37,9 +37,20 @@ function phoromatic_quit_if_invalid_input_found($input_keys = null) + { + foreach($input_keys as $key) + { +- if(isset($_REQUEST[$key]) && !empty($_REQUEST[$key])) ++ if(isset($_GET[$key]) && !empty($_GET[$key])) + { +- foreach(pts_arrays::to_array($_REQUEST[$key]) as $val_to_check) ++ foreach(pts_arrays::to_array($_GET[$key]) as $val_to_check) ++ { ++ if(stripos($val_to_check, $invalid_string) !== false) ++ { ++ echo '<strong>Exited due to invalid input ( ' . $invalid_string . ') attempted:</strong> ' . htmlspecialchars($val_to_check); ++ exit; ++ } ++ } ++ } ++ if(isset($_POST[$key]) && !empty($_POST[$key])) ++ { ++ foreach(pts_arrays::to_array($_POST[$key]) as $val_to_check) + { + if(stripos($val_to_check, $invalid_string) !== false) + { diff --git a/meta-oe/recipes-benchmark/phoronix-test-suite/phoronix-test-suite_8.8.1.bb b/meta-oe/recipes-benchmark/phoronix-test-suite/phoronix-test-suite_10.8.4.bb index c4df1a90b8..8de3314b3c 100644 --- a/meta-oe/recipes-benchmark/phoronix-test-suite/phoronix-test-suite_8.8.1.bb +++ b/meta-oe/recipes-benchmark/phoronix-test-suite/phoronix-test-suite_10.8.4.bb @@ -1,17 +1,19 @@ SUMMARY = "Phoronix Test Suite" DESCRIPTION = "The Phoronix Test Suite is designed to carry out both qualitative \ and quantitative benchmarks in a clean, reproducible, and easy-to-use manner." -LICENSE = "GPLv3" +LICENSE = "GPL-3.0-only" LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" SECTION = "console/tests" -SRC_URI = "http://www.phoronix-test-suite.com/releases/${BP}.tar.gz" -SRC_URI[md5sum] = "08fc81d25a1c24c7b091ac78ef145da6" -SRC_URI[sha256sum] = "d6feeeafb6d636667480b6fbfd2a6537e3b354b2c7c72305784d14d38ab4bcd0" +SRC_URI = "http://www.phoronix-test-suite.com/releases/${BP}.tar.gz \ + file://CVE-2022-40704.patch \ + " + +SRC_URI[sha256sum] = "1f2092d536c0a3193efc53e4a50f3cee65c0ef1a78d31e5404f1c663fff7b7f4" S = "${WORKDIR}/phoronix-test-suite" -inherit systemd allarch +inherit systemd allarch mime mime-xdg do_install() { DESTDIR=${D} ./install-sh ${exec_prefix} @@ -27,11 +29,11 @@ do_install() { # continual target reboots if they encounter network problems. # SYSTEMD_AUTO_ENABLE = "disable" -SYSTEMD_SERVICE_${PN} = "phoromatic-client.service phoromatic-server.service" +SYSTEMD_SERVICE:${PN} = "phoromatic-client.service phoromatic-server.service" -RDEPENDS_${PN} += "bash python php-cli util-linux-lscpu os-release lsb-release" +RDEPENDS:${PN} += "bash python3-core php-cli util-linux-lscpu os-release lsb-release" -FILES_${PN} += " \ +FILES:${PN} += " \ ${datadir}/phoronix-test-suite \ ${datadir}/appdata/phoronix-test-suite.appdata.xml \ ${datadir}/icons/hicolor/48x48/apps/phoronix-test-suite.png \ diff --git a/meta-oe/recipes-benchmark/qperf/qperf_0.4.11.bb b/meta-oe/recipes-benchmark/qperf/qperf_0.4.11.bb new file mode 100644 index 0000000000..b32f37153e --- /dev/null +++ b/meta-oe/recipes-benchmark/qperf/qperf_0.4.11.bb @@ -0,0 +1,18 @@ +SUMMARY = "Measure socket and RDMA performance" +DESCRIPTION = "qperf measures bandwidth and latency between two nodes." +HOMEPAGE = "https://github.com/linux-rdma/qperf" +LICENSE = "GPL-2.0-only" +LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe" + +inherit autotools-brokensep + +SRCREV = "c706363815a38ff2c5cbc07b73e2cfaaa59bae0f" +SRC_URI = "git://github.com/linux-rdma/qperf.git;protocol=https;branch=master" + +S = "${WORKDIR}/git" + +do_configure() { + ./cleanup + ./autogen.sh + oe_runconf +} diff --git a/meta-oe/recipes-benchmark/s-suite/s-suite_git.bb b/meta-oe/recipes-benchmark/s-suite/s-suite_git.bb index 8c49b4674f..629b123042 100644 --- a/meta-oe/recipes-benchmark/s-suite/s-suite_git.bb +++ b/meta-oe/recipes-benchmark/s-suite/s-suite_git.bb @@ -1,9 +1,9 @@ SUMMARY = "Small collection of benchmarks for storage I/O" -LICENSE = "GPLv2" +LICENSE = "GPL-2.0-only" LIC_FILES_CHKSUM = "file://COPYING;md5=b529aaa6a0c50f15d29f89609b5c22f3" -SRCREV = "3b9eef2259a70f412ab02fbe6b3a4d313d09c38a" -PV = "3.5" +SRCREV = "f97f1ae321d1fb8111a2c638075702ed2512ff07" +PV = "3.6" SRC_URI = "git://github.com/Algodev-github/S.git;protocol=https;branch=master" S = "${WORKDIR}/git" @@ -19,14 +19,15 @@ do_install() { install -m0755 ${S}/def_config.sh ${D}/opt/S-suite install -m0755 ${S}/config_params.sh ${D}/opt/S-suite + install -m0755 ${S}/create_config.sh ${D}/opt/S-suite install -m0755 ${S}/process_config.sh ${D}/opt/S-suite } -RDEPENDS_${PN} = "bash bc coreutils gawk g++ gcc fio libaio libaio-dev sysstat \ +RDEPENDS:${PN} = "bash bc coreutils gawk g++ gcc fio libaio libaio-dev sysstat \ git" -FILES_${PN} = "/opt/S-suite/" +FILES:${PN} = "/opt/S-suite/" # added to INSANE_SKIP since s-suite have an runtime # dependency (RDEPENDS) on libaio-dev. -INSANE_SKIP_${PN} += "dev-deps" +INSANE_SKIP:${PN} += "dev-deps" diff --git a/meta-oe/recipes-benchmark/stressapptest/stressapptest/libcplusplus-compat.patch b/meta-oe/recipes-benchmark/stressapptest/stressapptest/libcplusplus-compat.patch deleted file mode 100644 index f5e7da359d..0000000000 --- a/meta-oe/recipes-benchmark/stressapptest/stressapptest/libcplusplus-compat.patch +++ /dev/null @@ -1,28 +0,0 @@ -Fix compile on sytems using libc++ instead of libstdc++ - -libc++ does not really implement __gnu_cxx namespace and it -compiles fine without this namespace, therefore detect libc++ -and if it is used them exclude this namespace - -See https://github.com/stressapptest/stressapptest/issues/47 - -Fixes - -./sattypes.h:33:17: error: expected namespace name -using namespace __gnu_cxx; //NOLINT - -Upstream-Status: Pending -Signed-off-by: Khem Raj <raj.khem@gmail.com> - ---- stressapptest-1.0.9.orig/src/sattypes.h -+++ stressapptest-1.0.9/src/sattypes.h -@@ -30,7 +30,9 @@ - #include "stressapptest_config_android.h" // NOLINT - #else - #include "stressapptest_config.h" // NOLINT -+#ifndef _LIBCPP_VERSION - using namespace __gnu_cxx; //NOLINT -+#endif // _LIBCPP_VERSION - #endif // __ANDROID__ - using namespace std; - diff --git a/meta-oe/recipes-benchmark/stressapptest/stressapptest/read_sysfs_for_cachesize.patch b/meta-oe/recipes-benchmark/stressapptest/stressapptest/read_sysfs_for_cachesize.patch deleted file mode 100644 index 8c251aeb97..0000000000 --- a/meta-oe/recipes-benchmark/stressapptest/stressapptest/read_sysfs_for_cachesize.patch +++ /dev/null @@ -1,72 +0,0 @@ -sysconf params like _SC_LEVEL1_DCACHE_LINESIZE are not universally -implemented, therefore check for them being available, if not there -then read the sysfs directly to get the value - -Upstream-Status: Pending -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- a/src/sat.cc -+++ b/src/sat.cc -@@ -1482,15 +1482,47 @@ int Sat::CpuCount() { - return sysconf(_SC_NPROCESSORS_CONF); - } - -+int Sat::ReadInt(const char *filename, int *value) { -+ char line[64]; -+ int fd = open(filename, O_RDONLY), err = -1; -+ -+ if (fd < 0) -+ return -1; -+ if (read(fd, line, sizeof(line)) > 0) { -+ *value = atoi(line); -+ err = 0; -+ } -+ -+ close(fd); -+ return err; -+} -+ - // Return the worst case (largest) cache line size of the various levels of - // cache actually prsent in the machine. - int Sat::CacheLineSize() { -- int max_linesize = sysconf(_SC_LEVEL1_DCACHE_LINESIZE); -- int linesize = sysconf(_SC_LEVEL2_CACHE_LINESIZE); -+ int max_linesize, linesize; -+#ifdef _SC_LEVEL1_DCACHE_LINESIZE -+ max_linesize = sysconf(_SC_LEVEL1_DCACHE_LINESIZE); -+#else -+ ReadInt("/sys/devices/system/cpu/cpu0/cache/index0/coherency_line_size", &max_linesize); -+#endif -+#ifdef _SC_LEVEL2_DCACHE_LINESIZE -+ linesize = sysconf(_SC_LEVEL2_DCACHE_LINESIZE); -+#else -+ ReadInt("/sys/devices/system/cpu/cpu0/cache/index1/coherency_line_size", &linesize); -+#endif - if (linesize > max_linesize) max_linesize = linesize; -- linesize = sysconf(_SC_LEVEL3_CACHE_LINESIZE); -+#ifdef _SC_LEVEL3_DCACHE_LINESIZE -+ linesize = sysconf(_SC_LEVEL3_DCACHE_LINESIZE); -+#else -+ ReadInt("/sys/devices/system/cpu/cpu0/cache/index2/coherency_line_size", &linesize); -+#endif - if (linesize > max_linesize) max_linesize = linesize; -- linesize = sysconf(_SC_LEVEL4_CACHE_LINESIZE); -+#ifdef _SC_LEVEL4_DCACHE_LINESIZE -+ linesize = sysconf(_SC_LEVEL4_DCACHE_LINESIZE); -+#else -+ ReadInt("/sys/devices/system/cpu/cpu0/cache/index3/coherency_line_size", &linesize); -+#endif - if (linesize > max_linesize) max_linesize = linesize; - return max_linesize; - } ---- a/src/sat.h -+++ b/src/sat.h -@@ -136,7 +136,8 @@ class Sat { - int CpuCount(); - // Return the worst-case (largest) cache line size of the system. - int CacheLineSize(); -- -+ // Read int values from kernel file system e.g. sysfs -+ int ReadInt(const char *filename, int *value); - // Collect error counts from threads. - int64 GetTotalErrorCount(); - diff --git a/meta-oe/recipes-benchmark/stressapptest/stressapptest_1.0.9.bb b/meta-oe/recipes-benchmark/stressapptest/stressapptest_1.0.11.bb index a2966e99dd..ba61ff971e 100644 --- a/meta-oe/recipes-benchmark/stressapptest/stressapptest_1.0.9.bb +++ b/meta-oe/recipes-benchmark/stressapptest/stressapptest_1.0.11.bb @@ -9,12 +9,14 @@ SECTION = "benchmark" LICENSE = "Apache-2.0" LIC_FILES_CHKSUM = "file://COPYING;md5=55ea9d559f985fb4834317d8ed6b9e58" -SRCREV = "fb72e5e5f0879231f38e0e826a98a6ca2d1ca38e" +SRCREV = "25e31a2c1fcc66f3a43e91998f0819b016322a70" -SRC_URI = "git://github.com/stressapptest/stressapptest \ - file://libcplusplus-compat.patch \ - file://read_sysfs_for_cachesize.patch \ - " +EXTRA_AUTOCONF:append:armv7a = " --with-cpu=armv7a" +EXTRA_AUTOCONF:append:armv7ve = " --with-cpu=armv7a" + +GI_DATA_ENABLED:libc-musl:armv7a = "False" +GI_DATA_ENABLED:libc-musl:armv7ve = "False" +SRC_URI = "git://github.com/stressapptest/stressapptest;branch=master;protocol=https" S = "${WORKDIR}/git" diff --git a/meta-oe/recipes-benchmark/sysbench/sysbench_0.4.12.bb b/meta-oe/recipes-benchmark/sysbench/sysbench_1.0.20.bb index 708c71f4ff..11e33fec55 100644 --- a/meta-oe/recipes-benchmark/sysbench/sysbench_0.4.12.bb +++ b/meta-oe/recipes-benchmark/sysbench/sysbench_1.0.20.bb @@ -1,26 +1,30 @@ SUMMARY = "System performance benchmark" HOMEPAGE = "http://github.com/akopytov/sysbench" SECTION = "console/tests" -LICENSE = "GPLv2" -LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f" +LICENSE = "GPL-2.0-only" +LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" -inherit autotools +DEPENDS = "libtool luajit concurrencykit" + +inherit autotools-brokensep pkgconfig # The project has moved from Sourceforge to Launchpad, to Github. Use the source tarball from # Launchpad until the next release is available from Github. -SRC_URI = "https://launchpad.net/ubuntu/+archive/primary/+files/${BPN}_${PV}.orig.tar.gz" +SRC_URI = "git://github.com/akopytov/sysbench.git;protocol=https;branch=master" +SRCREV = "ebf1c90da05dea94648165e4f149abc20c979557" + +S = "${WORKDIR}/git" -SRC_URI[md5sum] = "3a6d54fdd3fe002328e4458206392b9d" -SRC_URI[sha256sum] = "83fa7464193e012c91254e595a89894d8e35b4a38324b52a5974777e3823ea9e" +COMPATIBLE_HOST = "(arm|aarch64|i.86|x86_64).*-linux*" -PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'largefile', d)}" -PACKAGECONFIG[largefile] = "--enable-largefile,--disable-largefile,," +EXTRA_OECONF += "--enable-largefile --with-system-luajit --with-system-ck --without-gcc-arch --with-lib-prefix=no" +PACKAGECONFIG ??= "" PACKAGECONFIG[aio] = "--enable-aio,--disable-aio,libaio," PACKAGECONFIG[mysql] = "--with-mysql \ --with-mysql-includes=${STAGING_INCDIR}/mysql \ --with-mysql-libs=${STAGING_LIBDIR}, \ --without-mysql,mysql5" -do_configure_prepend() { +do_configure:prepend() { touch ${S}/NEWS ${S}/AUTHORS } diff --git a/meta-oe/recipes-benchmark/tinymembench/tinymembench/0001-asm-Delete-.func-.endfunc-directives.patch b/meta-oe/recipes-benchmark/tinymembench/tinymembench/0001-asm-Delete-.func-.endfunc-directives.patch index c090700763..d69c52bee9 100644 --- a/meta-oe/recipes-benchmark/tinymembench/tinymembench/0001-asm-Delete-.func-.endfunc-directives.patch +++ b/meta-oe/recipes-benchmark/tinymembench/tinymembench/0001-asm-Delete-.func-.endfunc-directives.patch @@ -9,6 +9,8 @@ and rightly so. Signed-off-by: Khem Raj <raj.khem@gmail.com> --- +Upstream-Status: Pending + aarch64-asm.S | 14 +------------- arm-neon.S | 24 ------------------------ mips-32.S | 5 ++--- diff --git a/meta-oe/recipes-benchmark/tinymembench/tinymembench_git.bb b/meta-oe/recipes-benchmark/tinymembench/tinymembench_git.bb index 2ce10f9c44..200a0de849 100644 --- a/meta-oe/recipes-benchmark/tinymembench/tinymembench_git.bb +++ b/meta-oe/recipes-benchmark/tinymembench/tinymembench_git.bb @@ -6,10 +6,10 @@ HOMEPAGE = "https://github.com/ssvb/tinymembench/wiki" LICENSE = "MIT" LIC_FILES_CHKSUM = "file://main.c;endline=22;md5=879b9bbb60851454885b5fa47eb6b345" -PV = "0.4.0+git${SRCPV}" +PV = "0.4.9+git" SRCREV = "a2cf6d7e382e3aea1eb39173174d9fa28cad15f3" -SRC_URI = "git://github.com/ssvb/tinymembench.git \ +SRC_URI = "git://github.com/ssvb/tinymembench.git;branch=master;protocol=https \ file://0001-asm-Delete-.func-.endfunc-directives.patch \ " diff --git a/meta-oe/recipes-benchmark/tiobench/tiobench_0.3.3.bb b/meta-oe/recipes-benchmark/tiobench/tiobench_0.3.3.bb index 427ce67d61..0769715f45 100644 --- a/meta-oe/recipes-benchmark/tiobench/tiobench_0.3.3.bb +++ b/meta-oe/recipes-benchmark/tiobench/tiobench_0.3.3.bb @@ -1,9 +1,8 @@ SUMMARY = "Threaded I/O tester" HOMEPAGE = "http://sourceforge.net/projects/tiobench/" -LICENSE = "GPLv2" +LICENSE = "GPL-2.0-only" LIC_FILES_CHKSUM = "file://COPYING;md5=c93c0550bd3173f4504b2cbd8991e50b" -PR = "r1" SRC_URI = "\ http://sourceforge.net/projects/tiobench/files/tiobench/${PV}/${BP}.tar.gz \ @@ -21,7 +20,7 @@ do_install() { oe_runmake install } -RDEPENDS_${PN} = "\ +RDEPENDS:${PN} = "\ perl \ perl-module-exporter-heavy \ perl-module-getopt-long \ |