bundle-libbpf.sh 1.2 KB

123456789101112131415161718192021222324252627
  1. #!/bin/bash
  2. if [ "$(uname -m)" = x86_64 ]; then
  3. lib_subdir="lib64"
  4. else
  5. lib_subdir="lib"
  6. fi
  7. if [ "${2}" != "centos7" ]; then
  8. cp "${1}/packaging/current_libbpf.checksums" "${1}/packaging/libbpf.checksums"
  9. cp "${1}/packaging/current_libbpf.version" "${1}/packaging/libbpf.version"
  10. else
  11. cp "${1}/packaging/libbpf_0_0_9.checksums" "${1}/packaging/libbpf.checksums"
  12. cp "${1}/packaging/libbpf_0_0_9.version" "${1}/packaging/libbpf.version"
  13. fi
  14. LIBBPF_TARBALL="v$(cat "${1}/packaging/libbpf.version").tar.gz"
  15. LIBBPF_BUILD_PATH="${1}/externaldeps/libbpf/libbpf-$(cat "${1}/packaging/libbpf.version")"
  16. mkdir -p "${1}/externaldeps/libbpf" || exit 1
  17. curl -sSL --connect-timeout 10 --retry 3 "https://github.com/netdata/libbpf/archive/${LIBBPF_TARBALL}" > "${LIBBPF_TARBALL}" || exit 1
  18. sha256sum -c "${1}/packaging/libbpf.checksums" || exit 1
  19. tar -xzf "${LIBBPF_TARBALL}" -C "${1}/externaldeps/libbpf" || exit 1
  20. make -C "${LIBBPF_BUILD_PATH}/src" BUILD_STATIC_ONLY=1 OBJDIR=build/ DESTDIR=../ install || exit 1
  21. cp -r "${LIBBPF_BUILD_PATH}/usr/${lib_subdir}/libbpf.a" "${1}/externaldeps/libbpf" || exit 1
  22. cp -r "${LIBBPF_BUILD_PATH}/usr/include" "${1}/externaldeps/libbpf" || exit 1
  23. cp -r "${LIBBPF_BUILD_PATH}/include/uapi" "${1}/externaldeps/libbpf/include" || exit 1