common.sh 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. if test -n "${TRAVIS:-}"; then
  2. set -x
  3. fi
  4. if test -z "${ARCH:-}"; then
  5. ARCH=$(uname -m)
  6. fi
  7. CFLAGS="-Wall -Wextra -Werror ${CFLAGS:-}"
  8. if test $ARCH = $(uname -m); then
  9. # Native
  10. TARGET=$ARCH
  11. PREFIX=
  12. INTERP=
  13. else
  14. # Simulate
  15. # (see .github/workflows/ci.yml for list of needed packages)
  16. case "$ARCH" in
  17. arm*hf | armhf-*)
  18. TARGET=armhf
  19. PREFIX=arm-linux-gnueabihf-
  20. INTERP="qemu-arm -L /usr/arm-linux-gnueabihf -E LD_LIBRARY_PATH=.${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}"
  21. CFLAGS="$CFLAGS -mthumb-interwork -mfpu=neon"
  22. ;;
  23. arm | arm-* | armel-*)
  24. TARGET=arm
  25. PREFIX=arm-linux-gnueabi-
  26. INTERP="qemu-arm -L /usr/arm-linux-gnueabi -E LD_LIBRARY_PATH=.${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}"
  27. ;;
  28. aarch64*)
  29. TARGET=aarch64
  30. PREFIX=aarch64-linux-gnu-
  31. INTERP="qemu-aarch64 -L /usr/aarch64-linux-gnu -E LD_LIBRARY_PATH=.${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}"
  32. ;;
  33. i[0-9]86*)
  34. TARGET=i686
  35. PREFIX=
  36. INTERP=
  37. CFLAGS="$CFLAGS -m32"
  38. ;;
  39. mips | mips-*)
  40. TARGET=mips
  41. PREFIX=mips-linux-gnu-
  42. INTERP="qemu-mips -L /usr/mips-linux-gnu -E LD_LIBRARY_PATH=.${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}"
  43. ;;
  44. mipsel | mipsel-*)
  45. TARGET=mipsel
  46. PREFIX=mipsel-linux-gnu-
  47. INTERP="qemu-mipsel -L /usr/mipsel-linux-gnu -E LD_LIBRARY_PATH=.${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}"
  48. ;;
  49. mips64el | mips64el-*)
  50. TARGET=mips64el
  51. PREFIX=mips64el-linux-gnuabi64-
  52. INTERP="qemu-mips64el -L /usr/mips64el-linux-gnuabi64 -E LD_LIBRARY_PATH=.${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}"
  53. ;;
  54. *)
  55. echo >&2 "Unsupported target: $ARCH"
  56. exit 1
  57. ;;
  58. esac
  59. fi
  60. CFLAGS="-Wall -Wextra -Werror ${CFLAGS:-}"
  61. CC=$PREFIX${CC:-gcc}
  62. CXX=$PREFIX${CXX:-g++}
  63. if uname -o | grep -q FreeBSD; then
  64. LIBS=
  65. else
  66. LIBS=-ldl
  67. fi