comparison src/configure.in @ 7609:77a14f3bc18b v7.4.1104

commit https://github.com/vim/vim/commit/4e640bd930d133889dbc9f9a77e29bab902e3b7d Author: Bram Moolenaar <Bram@vim.org> Date: Sat Jan 16 16:20:38 2016 +0100 patch 7.4.1104 Problem: Various problems building with MzScheme/Racket. Solution: Make it work with new versions of Racket. (Yukihiro Nakadaira, Ken Takata)
author Christian Brabandt <cb@256bit.org>
date Sat, 16 Jan 2016 16:30:04 +0100
parents c9fc24b76293
children 6157052a0e58
comparison
equal deleted inserted replaced
7608:161471eae904 7609:77a14f3bc18b
693 with_plthome="$withval"; AC_MSG_RESULT($with_plthome), 693 with_plthome="$withval"; AC_MSG_RESULT($with_plthome),
694 with_plthome="";AC_MSG_RESULT("no")) 694 with_plthome="";AC_MSG_RESULT("no"))
695 695
696 if test "X$with_plthome" != "X"; then 696 if test "X$with_plthome" != "X"; then
697 vi_cv_path_mzscheme_pfx="$with_plthome" 697 vi_cv_path_mzscheme_pfx="$with_plthome"
698 vi_cv_path_mzscheme="${vi_cv_path_mzscheme_pfx}/bin/mzscheme"
698 else 699 else
699 AC_MSG_CHECKING(PLTHOME environment var) 700 AC_MSG_CHECKING(PLTHOME environment var)
700 if test "X$PLTHOME" != "X"; then 701 if test "X$PLTHOME" != "X"; then
701 AC_MSG_RESULT("$PLTHOME") 702 AC_MSG_RESULT("$PLTHOME")
702 vi_cv_path_mzscheme_pfx="$PLTHOME" 703 vi_cv_path_mzscheme_pfx="$PLTHOME"
704 vi_cv_path_mzscheme="${vi_cv_path_mzscheme_pfx}/bin/mzscheme"
703 else 705 else
704 AC_MSG_RESULT(not set) 706 AC_MSG_RESULT(not set)
705 dnl -- try to find MzScheme executable 707 dnl -- try to find MzScheme executable
706 AC_PATH_PROG(vi_cv_path_mzscheme, mzscheme) 708 AC_PATH_PROG(vi_cv_path_mzscheme, mzscheme)
707 709
729 rm -f mzdirs.scm 731 rm -f mzdirs.scm
730 fi 732 fi
731 fi 733 fi
732 fi 734 fi
733 735
734 SCHEME_INC=
735 if test "X$vi_cv_path_mzscheme_pfx" != "X"; then 736 if test "X$vi_cv_path_mzscheme_pfx" != "X"; then
736 AC_MSG_CHECKING(if scheme.h can be found in $vi_cv_path_mzscheme_pfx/include) 737 AC_MSG_CHECKING(for racket include directory)
737 if test -f "$vi_cv_path_mzscheme_pfx/include/scheme.h"; then 738 SCHEME_INC=`${vi_cv_path_mzscheme} -e '(require setup/dirs)(let ((p (find-include-dir))) (when (path? p) (display p)))'`
738 SCHEME_INC=${vi_cv_path_mzscheme_pfx}/include 739 if test "X$SCHEME_INC" != "X"; then
739 AC_MSG_RESULT(yes) 740 AC_MSG_RESULT(${SCHEME_INC})
740 else 741 else
741 AC_MSG_RESULT(no) 742 AC_MSG_RESULT(not found)
742 AC_MSG_CHECKING(if scheme.h can be found in $vi_cv_path_mzscheme_pfx/include/plt) 743 AC_MSG_CHECKING(if scheme.h can be found in $vi_cv_path_mzscheme_pfx/include)
743 if test -f "$vi_cv_path_mzscheme_pfx/include/plt/scheme.h"; then 744 if test -f "$vi_cv_path_mzscheme_pfx/include/scheme.h"; then
745 SCHEME_INC=${vi_cv_path_mzscheme_pfx}/include
744 AC_MSG_RESULT(yes) 746 AC_MSG_RESULT(yes)
745 SCHEME_INC=${vi_cv_path_mzscheme_pfx}/include/plt
746 else 747 else
747 AC_MSG_RESULT(no) 748 AC_MSG_RESULT(no)
748 AC_MSG_CHECKING(if scheme.h can be found in $vi_cv_path_mzscheme_pfx/include/racket) 749 AC_MSG_CHECKING(if scheme.h can be found in $vi_cv_path_mzscheme_pfx/include/plt)
749 if test -f "$vi_cv_path_mzscheme_pfx/include/racket/scheme.h"; then 750 if test -f "$vi_cv_path_mzscheme_pfx/include/plt/scheme.h"; then
750 AC_MSG_RESULT(yes) 751 AC_MSG_RESULT(yes)
751 SCHEME_INC=${vi_cv_path_mzscheme_pfx}/include/racket 752 SCHEME_INC=${vi_cv_path_mzscheme_pfx}/include/plt
752 else 753 else
753 AC_MSG_RESULT(no) 754 AC_MSG_RESULT(no)
754 AC_MSG_CHECKING(if scheme.h can be found in /usr/include/plt/) 755 AC_MSG_CHECKING(if scheme.h can be found in $vi_cv_path_mzscheme_pfx/include/racket)
755 if test -f /usr/include/plt/scheme.h; then 756 if test -f "$vi_cv_path_mzscheme_pfx/include/racket/scheme.h"; then
756 AC_MSG_RESULT(yes) 757 AC_MSG_RESULT(yes)
757 SCHEME_INC=/usr/include/plt 758 SCHEME_INC=${vi_cv_path_mzscheme_pfx}/include/racket
758 else 759 else
759 AC_MSG_RESULT(no) 760 AC_MSG_RESULT(no)
760 AC_MSG_CHECKING(if scheme.h can be found in /usr/include/racket/) 761 AC_MSG_CHECKING(if scheme.h can be found in /usr/include/plt/)
761 if test -f /usr/include/racket/scheme.h; then 762 if test -f /usr/include/plt/scheme.h; then
762 AC_MSG_RESULT(yes) 763 AC_MSG_RESULT(yes)
763 SCHEME_INC=/usr/include/racket 764 SCHEME_INC=/usr/include/plt
764 else 765 else
765 AC_MSG_RESULT(no) 766 AC_MSG_RESULT(no)
766 vi_cv_path_mzscheme_pfx= 767 AC_MSG_CHECKING(if scheme.h can be found in /usr/include/racket/)
768 if test -f /usr/include/racket/scheme.h; then
769 AC_MSG_RESULT(yes)
770 SCHEME_INC=/usr/include/racket
771 else
772 AC_MSG_RESULT(no)
773 vi_cv_path_mzscheme_pfx=
774 fi
767 fi 775 fi
768 fi 776 fi
769 fi 777 fi
770 fi 778 fi
771 fi 779 fi
772 fi 780 fi
773 781
774 if test "X$vi_cv_path_mzscheme_pfx" != "X"; then 782 if test "X$vi_cv_path_mzscheme_pfx" != "X"; then
775 if test "x$MACOSX" = "xyes"; then 783
776 MZSCHEME_LIBS="-framework Racket" 784 AC_MSG_CHECKING(for racket lib directory)
777 MZSCHEME_CFLAGS="-DMZ_PRECISE_GC" 785 SCHEME_LIB=`${vi_cv_path_mzscheme} -e '(require setup/dirs)(let ((p (find-lib-dir))) (when (path? p) (display p)))'`
778 elif test -f "${vi_cv_path_mzscheme_pfx}/lib/libmzscheme3m.a"; then 786 if test "X$SCHEME_LIB" != "X"; then
779 MZSCHEME_LIBS="${vi_cv_path_mzscheme_pfx}/lib/libmzscheme3m.a" 787 AC_MSG_RESULT(${SCHEME_LIB})
780 MZSCHEME_CFLAGS="-DMZ_PRECISE_GC"
781 elif test -f "${vi_cv_path_mzscheme_pfx}/lib/libracket3m.a"; then
782 MZSCHEME_LIBS="${vi_cv_path_mzscheme_pfx}/lib/libracket3m.a"
783 MZSCHEME_CFLAGS="-DMZ_PRECISE_GC"
784 elif test -f "${vi_cv_path_mzscheme_pfx}/lib/libracket.a"; then
785 MZSCHEME_LIBS="${vi_cv_path_mzscheme_pfx}/lib/libracket.a ${vi_cv_path_mzscheme_pfx}/lib/libmzgc.a"
786 elif test -f "${vi_cv_path_mzscheme_pfx}/lib/libmzscheme.a"; then
787 MZSCHEME_LIBS="${vi_cv_path_mzscheme_pfx}/lib/libmzscheme.a ${vi_cv_path_mzscheme_pfx}/lib/libmzgc.a"
788 else 788 else
789 dnl Using shared objects 789 AC_MSG_RESULT(not found)
790 if test -f "${vi_cv_path_mzscheme_pfx}/lib/libmzscheme3m.so"; then 790 fi
791 MZSCHEME_LIBS="-L${vi_cv_path_mzscheme_pfx}/lib -lmzscheme3m" 791
792 MZSCHEME_CFLAGS="-DMZ_PRECISE_GC" 792 for path in "${vi_cv_path_mzscheme_pfx}/lib" "${SCHEME_LIB}"; do
793 elif test -f "${vi_cv_path_mzscheme_pfx}/lib/libracket3m.so"; then 793 if test "X$path" != "X"; then
794 MZSCHEME_LIBS="-L${vi_cv_path_mzscheme_pfx}/lib -lracket3m" 794 if test "x$MACOSX" = "xyes"; then
795 MZSCHEME_CFLAGS="-DMZ_PRECISE_GC" 795 MZSCHEME_LIBS="-framework Racket"
796 elif test -f "${vi_cv_path_mzscheme_pfx}/lib/libracket.so"; then 796 MZSCHEME_CFLAGS="-DMZ_PRECISE_GC"
797 MZSCHEME_LIBS="-L${vi_cv_path_mzscheme_pfx}/lib -lracket -lmzgc" 797 elif test -f "${path}/libmzscheme3m.a"; then
798 MZSCHEME_LIBS="${path}/libmzscheme3m.a"
799 MZSCHEME_CFLAGS="-DMZ_PRECISE_GC"
800 elif test -f "${path}/libracket3m.a"; then
801 MZSCHEME_LIBS="${path}/libracket3m.a"
802 MZSCHEME_CFLAGS="-DMZ_PRECISE_GC"
803 elif test -f "${path}/libracket.a"; then
804 MZSCHEME_LIBS="${path}/libracket.a ${path}/libmzgc.a"
805 elif test -f "${path}/libmzscheme.a"; then
806 MZSCHEME_LIBS="${path}/libmzscheme.a ${path}/libmzgc.a"
807 else
808 dnl Using shared objects
809 if test -f "${path}/libmzscheme3m.so"; then
810 MZSCHEME_LIBS="-L${path} -lmzscheme3m"
811 MZSCHEME_CFLAGS="-DMZ_PRECISE_GC"
812 elif test -f "${path}/libracket3m.so"; then
813 MZSCHEME_LIBS="-L${path} -lracket3m"
814 MZSCHEME_CFLAGS="-DMZ_PRECISE_GC"
815 elif test -f "${path}/libracket.so"; then
816 MZSCHEME_LIBS="-L${path} -lracket -lmzgc"
817 else
818 dnl try next until last
819 if test "$path" != "$SCHEME_LIB"; then
820 continue
821 fi
822 MZSCHEME_LIBS="-L${path} -lmzscheme -lmzgc"
823 fi
824 if test "$GCC" = yes; then
825 dnl Make Vim remember the path to the library. For when it's not in
826 dnl $LD_LIBRARY_PATH.
827 MZSCHEME_LIBS="${MZSCHEME_LIBS} -Wl,-rpath -Wl,${path}"
828 elif test "`(uname) 2>/dev/null`" = SunOS &&
829 uname -r | grep '^5' >/dev/null; then
830 MZSCHEME_LIBS="${MZSCHEME_LIBS} -R ${path}"
831 fi
832 fi
833 fi
834 if test "X$MZSCHEME_LIBS" != "X"; then
835 break
836 fi
837 done
838
839 AC_MSG_CHECKING([if racket requires -pthread])
840 if test "X$SCHEME_LIB" != "X" && $FGREP -e -pthread "$SCHEME_LIB/buildinfo" >/dev/null ; then
841 AC_MSG_RESULT(yes)
842 MZSCHEME_LIBS="${MZSCHEME_LIBS} -pthread"
843 MZSCHEME_CFLAGS="${MZSCHEME_CFLAGS} -pthread"
844 else
845 AC_MSG_RESULT(no)
846 fi
847
848 AC_MSG_CHECKING(for racket config directory)
849 SCHEME_CONFIGDIR=`${vi_cv_path_mzscheme} -e '(require setup/dirs)(let ((p (find-config-dir))) (when (path? p) (display p)))'`
850 if test "X$SCHEME_CONFIGDIR" != "X"; then
851 MZSCHEME_CFLAGS="${MZSCHEME_CFLAGS} -DMZSCHEME_CONFIGDIR='\"${SCHEME_CONFIGDIR}\"'"
852 AC_MSG_RESULT(${SCHEME_CONFIGDIR})
853 else
854 AC_MSG_RESULT(not found)
855 fi
856
857 AC_MSG_CHECKING(for racket collects directory)
858 SCHEME_COLLECTS=`${vi_cv_path_mzscheme} -e '(require setup/dirs)(let ((p (find-collects-dir))) (when (path? p) (let-values (((base _1 _2) (split-path p))) (display base))))'`
859 if test "X$SCHEME_COLLECTS" = "X"; then
860 if test -d "$vi_cv_path_mzscheme_pfx/lib/plt/collects"; then
861 SCHEME_COLLECTS=$vi_cv_path_mzscheme_pfx/lib/plt/
798 else 862 else
799 MZSCHEME_LIBS="-L${vi_cv_path_mzscheme_pfx}/lib -lmzscheme -lmzgc" 863 if test -d "$vi_cv_path_mzscheme_pfx/lib/racket/collects"; then
800 fi 864 SCHEME_COLLECTS=$vi_cv_path_mzscheme_pfx/lib/racket/
801 if test "$GCC" = yes; then
802 dnl Make Vim remember the path to the library. For when it's not in
803 dnl $LD_LIBRARY_PATH.
804 MZSCHEME_LIBS="${MZSCHEME_LIBS} -Wl,-rpath -Wl,${vi_cv_path_mzscheme_pfx}/lib"
805 elif test "`(uname) 2>/dev/null`" = SunOS &&
806 uname -r | grep '^5' >/dev/null; then
807 MZSCHEME_LIBS="${MZSCHEME_LIBS} -R ${vi_cv_path_mzscheme_pfx}/lib"
808 fi
809 fi
810
811 AC_MSG_CHECKING(for racket collects directory)
812 if test -d "$vi_cv_path_mzscheme_pfx/lib/plt/collects"; then
813 SCHEME_COLLECTS=$vi_cv_path_mzscheme_pfx/lib/plt/
814 else
815 if test -d "$vi_cv_path_mzscheme_pfx/lib/racket/collects"; then
816 SCHEME_COLLECTS=$vi_cv_path_mzscheme_pfx/lib/racket/
817 else
818 if test -d "$vi_cv_path_mzscheme_pfx/share/racket/collects"; then
819 SCHEME_COLLECTS=$vi_cv_path_mzscheme_pfx/share/racket/
820 else 865 else
821 if test -d "$vi_cv_path_mzscheme_pfx/collects"; then 866 if test -d "$vi_cv_path_mzscheme_pfx/share/racket/collects"; then
822 SCHEME_COLLECTS=$vi_cv_path_mzscheme_pfx/ 867 SCHEME_COLLECTS=$vi_cv_path_mzscheme_pfx/share/racket/
868 else
869 if test -d "$vi_cv_path_mzscheme_pfx/collects"; then
870 SCHEME_COLLECTS=$vi_cv_path_mzscheme_pfx/
871 fi
823 fi 872 fi
824 fi 873 fi
825 fi 874 fi
826 fi 875 fi
827 if test "X$SCHEME_COLLECTS" != "X" ; then 876 if test "X$SCHEME_COLLECTS" != "X" ; then
849 fi 898 fi
850 fi 899 fi
851 if test "X$MZSCHEME_EXTRA" != "X" ; then 900 if test "X$MZSCHEME_EXTRA" != "X" ; then
852 dnl need to generate bytecode for MzScheme base 901 dnl need to generate bytecode for MzScheme base
853 MZSCHEME_CFLAGS="${MZSCHEME_CFLAGS} -DINCLUDE_MZSCHEME_BASE" 902 MZSCHEME_CFLAGS="${MZSCHEME_CFLAGS} -DINCLUDE_MZSCHEME_BASE"
854 MZSCHEME_MZC="${vi_cv_path_mzscheme_pfx}/bin/mzc"
855 AC_MSG_RESULT(needed) 903 AC_MSG_RESULT(needed)
856 else 904 else
857 AC_MSG_RESULT(not needed) 905 AC_MSG_RESULT(not needed)
858 fi 906 fi
859 907