configure 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. #!/bin/sh
  2. LIBS="x11"
  3. USE_XINERAMA="xinerama"
  4. USE_XRANDR="xrandr"
  5. USE_IMLIB2="imlib2"
  6. USE_XFT="xft freetype2"
  7. OS=`uname -s`
  8. PREFIX=/usr/local
  9. MANPREFIX="$PREFIX/man"
  10. XDG_CONFIG_DIR="$PREFIX/etc/xdg"
  11. while true; do
  12. case "$1" in
  13. --without-xinerama)
  14. USE_XINERAMA=""; shift;;
  15. --prefix)
  16. [ -z "$2" ] && echo "Missing argument" && exit 1
  17. PREFIX=$2; shift 2;;
  18. --xdg-config-dir)
  19. [ -z "$2" ] && echo "Missing argument" && exit 1
  20. XDG_CONFIG_DIR=$2; shift 2;;
  21. --help|-h)
  22. echo "Usage: ./configure [options]
  23. --without-xinerama : compile without xinerama support
  24. --prefix DIRECTORY : install binary with specified prefix (default $PREFIX)
  25. --xdg-config-dir DIRECTORY : install configuration to specified directory (default $XDG_CONFIG_DIR)"
  26. exit 0;;
  27. *) break;;
  28. esac
  29. done
  30. LIBS="$LIBS $USE_XINERAMA"
  31. which pkg-config >/dev/null 2>&1
  32. if [ $? -eq 0 ];
  33. then
  34. CFLAGS=`pkg-config --cflags-only-I $LIBS`
  35. LDFLAGS=`pkg-config --libs $LIBS`
  36. else
  37. # Try to use some known paths
  38. case $OS in
  39. FreeBSD)
  40. CFLAGS="-I/usr/local/include"
  41. LDFLAGS="-L/usr/local/lib";;
  42. OpenBSD)
  43. CFLAGS="-I/usr/X11R6/include -I/usr/local/include"
  44. LDFLAGS="-L/usr/X11R6/lib -L/usr/local/lib";;
  45. NetBSD)
  46. CFLAGS="-I/usr/X11R7/include -I/usr/local/include"
  47. LDFLAGS="-L/usr/X11R7/lib -L/usr/local/lib";;
  48. Linux)
  49. CFLAGS=""
  50. LDFLAGS=""
  51. ;;
  52. *)
  53. echo "No default CFLAGS and LDFLAGS found for your OS, feel free to contribute or install pkg-config :)"
  54. exit 1;;
  55. esac
  56. LDFLAGS="$LDFLAGS -lX11"
  57. [ -n "$USE_XINERAMA" ] && LDFLAGS="$LDFLAGS -lXinerama"
  58. fi
  59. [ -n "$USE_XINERAMA" ] && CFLAGS="$CFLAGS -DHAVE_XINERAMA"
  60. cat > Makefile << EOF
  61. PREFIX=$PREFIX
  62. XDG_CONFIG_DIR=$XDG_CONFIG_DIR
  63. MANPREFIX=$MANPREFIX
  64. CFLAGS+=$CFLAGS
  65. LDFLAGS+=$LDFLAGS
  66. EOF
  67. cat Makefile.in >> Makefile
  68. echo "Compilation resume:
  69. OS=$OS
  70. CFLAGS=$CFLAGS
  71. LDFLAGS=$LDFLAGS
  72. PREFIX=$PREFIX
  73. MANPREFIX=$MANPREFIX
  74. XDG_CONFIG_DIR=$XDG_CONFIG_DIR
  75. You can run 'make' now :-)
  76. "