memtest86plus 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. #!/usr/bin/env bash
  2. # helper script: Downloads MemTest86+ and patches it
  3. #
  4. # Copyright (C) 2014, 2015, 2020, 2021 Leah Rowe <info@minifree.org>
  5. # Copyright (C) 2015 Joseph Michael Thompson <jmt@josepht.me>
  6. # Copyright (C) 2015 Klemens Nanni <contact@autoboot.org>
  7. #
  8. # This program is free software: you can redistribute it and/or modify
  9. # it under the terms of the GNU General Public License as published by
  10. # the Free Software Foundation, either version 3 of the License, or
  11. # (at your option) any later version.
  12. #
  13. # This program is distributed in the hope that it will be useful,
  14. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  15. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  16. # GNU General Public License for more details.
  17. #
  18. # You should have received a copy of the GNU General Public License
  19. # along with this program. If not, see <http://www.gnu.org/licenses/>.
  20. #
  21. [ "x${DEBUG+set}" = 'xset' ] && set -v
  22. set -u -e
  23. usage()
  24. {
  25. progname="./download memtest86plus"
  26. printf "Usage:\n"
  27. printf "\t%s # %s\n" \
  28. "${progname}" \
  29. "Download MemTest86+"
  30. printf "\t%s --help # %s\n" \
  31. "${progname}" \
  32. "Prints this help"
  33. }
  34. if [ $# -ne 0 ] ; then
  35. usage
  36. exit 0
  37. fi
  38. # Get the last version of MemTest86+ used, apply patches, build it.
  39. # Remove the old version that may exist
  40. # ------------------------------------------------------------------------------
  41. printf "Downloading MemTest86+\n"
  42. rm -Rf "memtest86plus/"
  43. git clone https://review.coreboot.org/memtest86plus.git
  44. (
  45. cd "memtest86plus/"
  46. git reset --hard a78401b9704cfdd49c89bfb31d2df08f60521d0b
  47. for patchfile in ../resources/memtest86plus/patch/*; do
  48. if [ ! -f "${patchfile}" ]; then
  49. continue
  50. fi
  51. git am "${patchfile}"
  52. done
  53. rm -Rf .git*
  54. )
  55. printf "\n\n"