netperf_git.bb 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. SUMMARY = "A networking benchmarking tool"
  2. DESCRIPTION = "Network performance benchmark including tests for TCP, UDP, sockets, ATM and more."
  3. SECTION = "net"
  4. HOMEPAGE = "http://www.netperf.org/"
  5. LICENSE = "MIT"
  6. LIC_FILES_CHKSUM = "file://COPYING;md5=e661ab33a2a71ad6652c178dedf8aaa2"
  7. PV = "2.7.0+git"
  8. SRC_URI = "git://github.com/HewlettPackard/netperf.git;branch=master;protocol=https \
  9. file://cpu_set.patch \
  10. file://vfork.patch \
  11. file://init \
  12. file://netserver.service \
  13. file://0001-netlib.c-Move-including-sched.h-out-og-function.patch \
  14. file://0001-nettest_omni-Remove-duplicate-variable-definitions.patch \
  15. file://netserver_permissions.patch \
  16. "
  17. SRCREV = "3bc455b23f901dae377ca0a558e1e32aa56b31c4"
  18. S = "${WORKDIR}/git"
  19. inherit update-rc.d autotools texinfo systemd
  20. # cpu_set.patch plus _GNU_SOURCE makes src/netlib.c compile with CPU_ macros
  21. CFLAGS:append = " -DDO_UNIX -DDO_IPV6 -D_GNU_SOURCE"
  22. # set the "_FILE_OFFSET_BITS" preprocessor symbol to 64 to support files
  23. # larger than 2GB
  24. CFLAGS:append = " -D_FILE_OFFSET_BITS=64"
  25. PACKAGECONFIG ??= ""
  26. PACKAGECONFIG[sctp] = "--enable-sctp,--disable-sctp,lksctp-tools,"
  27. PACKAGECONFIG[intervals] = "--enable-intervals,--disable-intervals,,"
  28. PACKAGECONFIG[histogram] = "--enable-histogram,--disable-histogram,,"
  29. # autotools.bbclass attends to include m4 files with path depth <= 2 by
  30. # "find ${S} -maxdepth 2 -name \*.m4", so move m4 files from m4/m4.
  31. do_configure:prepend() {
  32. test -d ${S}/m4/m4 && mv -f ${S}/m4/m4 ${S}/m4-files
  33. }
  34. do_install() {
  35. sed -e 's#/usr/sbin/#${sbindir}/#g' -i ${UNPACKDIR}/init
  36. install -d ${D}${sbindir} ${D}${bindir} ${D}${sysconfdir}/init.d ${D}${systemd_system_unitdir}
  37. if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
  38. sed -e 's#/usr/sbin/#${sbindir}/#g' ${UNPACKDIR}/netserver.service > ${D}${systemd_system_unitdir}/netserver.service
  39. fi
  40. install -m 4755 src/netperf ${D}${bindir}
  41. install -m 4755 src/netserver ${D}${sbindir}
  42. install -m 0755 ${UNPACKDIR}/init ${D}${sysconfdir}/init.d/netperf
  43. # man
  44. install -d ${D}${mandir}/man1/
  45. install -m 0644 ${S}/doc/netserver.man ${D}${mandir}/man1/netserver.1
  46. install -m 0644 ${S}/doc/netperf.man ${D}${mandir}/man1/netperf.1
  47. # move scripts to examples directory
  48. install -d ${D}${docdir}/netperf/examples
  49. install -m 0644 ${S}/doc/examples/*_script ${D}${docdir}/netperf/examples/
  50. # docs ..
  51. install -m 0644 ${S}/COPYING ${D}${docdir}/netperf
  52. install -m 0644 ${S}/Release_Notes ${D}${docdir}/netperf
  53. install -m 0644 ${S}/README ${D}${docdir}/netperf
  54. install -m 0644 ${S}/doc/netperf_old.ps ${D}${docdir}/netperf
  55. }
  56. RRECOMMENDS:${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'sctp', 'kernel-module-sctp', '', d)}"
  57. INITSCRIPT_NAME="netperf"
  58. INITSCRIPT_PARAMS="defaults"
  59. SYSTEMD_SERVICE:${PN} = "netserver.service"