$NetBSD: patch-ac,v 1.39 2016/07/26 04:53:33 wen Exp $

Do not include system paths in R_LD_LIBRARY_PATH.
FreeBSD 10 is not FreeBSD 1.
Fix texi2any version check.

--- configure.orig	2016-07-26 00:32:06.000000000 +0000
+++ configure
@@ -3896,7 +3896,7 @@ fi
 
 ## As from R 3.2.0 split up -L... and -lR
 if test "${want_R_shlib}" = yes; then
-  LIBR0="-L\$(R_HOME)/lib\$(R_ARCH)"
+  LIBR0="-Wl,-R${prefix}/lib/R/lib\$(R_ARCH) -L\$(R_HOME)/lib\$(R_ARCH)"
   LIBR1=-lR
 else
   LIBR0=
@@ -5076,7 +5076,7 @@ if test -z "${texi2any_version_maj}" \
 elif test ${texi2any_version_maj} -gt 5; then
   r_cv_prog_texi2any_v5=yes
 elif test ${texi2any_version_maj} -lt 5 \
-     || test ${texi2any_version_min} -lt 1; then
+     || test ${texi2any_version_maj} = 5 -a ${texi2any_version_min} -lt 1; then
   r_cv_prog_texi2any_v5=no
 else
   r_cv_prog_texi2any_v5=yes
@@ -22376,7 +22376,7 @@ case "${host_os}" in
     ## Not so bad in later versions of Darwin,
     ## where DYLD_FALLBACK_LIBRARY_PATH is used (see below).
     ;;
-  *)
+  donotuse*)
     for arg in ${LDFLAGS}; do
       case "${arg}" in
         -L*)
@@ -24958,6 +24958,11 @@ fi
 	  done
 	  ;;
 	-[lLR]*)
+           case $ac_arg in
+           -R*)
+               ac_arg="${wl}$ac_arg"
+               ;;
+           esac
 	    ac_exists=false
   for ac_i in $ac_cv_f77_libs; do
     if test x"$ac_arg" = x"$ac_i"; then
@@ -25923,6 +25928,9 @@ cat > conftest.c <<EOF
 
 extern void F77_SYMBOL(cftest)(int *a, int *b, double *x, double *y);
 
+int MAIN_ () { return 0; }
+int MAIN__ () { return 0; }
+
 int main () {
   int a[3] = {17, 237, 2000000000}, b[2], res = 0;
   double x[3] = {3.14159265, 123.456789, 2.3e34}, z[3];
@@ -26018,6 +26026,9 @@ typedef struct {
 
 extern void F77_SYMBOL(cftest)(Rcomplex *x);
 
+int MAIN_ () { return 0; }
+int MAIN__ () { return 0; }
+
 int main () {
     Rcomplex z[3];
 
@@ -28175,7 +28186,7 @@ $as_echo "$as_me: WARNING: Use of flat n
     fpicflags="${darwin_pic}"
     shlib_cxxldflags="${shlib_ldflags}"
     ;;
-  freebsd*)
+  freebsd*|dragonfly*)
     ## maybe this needs to depend on the compiler:
     ## -export-dynamic used to work, but does not with clang.
     ## Seems FreeBSD has used the GNU linker since at least 3.0 (Oct 1998)
@@ -28271,6 +28282,12 @@ $as_echo "$as_me: WARNING: Use of flat n
     ;;
   netbsd*)
     ## See the comments about FreeBSD
+    fpicflags="-fPIC"
+      case "${host_cpu}" in
+        powerpc*)
+        cpicflags="-fPIC"
+        ;;
+      esac
     if ${CPP} - -dM < /dev/null | grep __ELF__ >/dev/null ; then
       main_ldflags="-Wl,--export-dynamic"
       shlib_ldflags="-shared"
@@ -28313,22 +28330,22 @@ $as_echo "$as_me: WARNING: Use of flat n
   solaris*)
 ## SPARC has only an 8k global object table, 1024 entries on 64-bit,
 ## so need PIC not pic.  They are the same on other Solaris platforms.
-    shlib_ldflags="-G"
-    shlib_cxxldflags="-G"
    if test "${GCC}" = yes; then
+      shlib_ldflags="-shared"
+      shlib_cxxldflags="-shared"
       cpicflags="-fPIC"
       ld=`${CC} -print-prog-name=ld`
       ldoutput=`${ld} -v 2>&1 | grep GNU`
       if test -n "${ldoutput}"; then
 	main_ldflags="-Wl,-export-dynamic"
-	shlib_ldflags="-shared"
-        shlib_cxxldflags="-shared"
       else
         ## it seems gcc c 4.6.2 needs this with Solaris linker
 	shlib_ldflags="-shared"
         shlib_cxxldflags="-shared"
       fi
     else
+      shlib_ldflags="-G"
+      shlib_cxxldflags="-G"
       cpicflags="-KPIC"
       if test "`basename ${CXX}`" = "CC" ; then
         ## Forte version 7 needs -lCstd: Forte 6 does not.
@@ -28389,7 +28406,7 @@ fi
 : ${CPICFLAGS="${cpicflags}"}
 if test -z "${CPICFLAGS}"; then
   case "${host_os}" in
-    aix*|irix*|mingw*|osf*)
+    aix*|irix*|mingw*|osf*|darwin*)
       ;;
     *)
       { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: I could not determine CPICFLAGS." >&5
@@ -28489,10 +28506,10 @@ case "${host_os}" in
     DYLIB_EXT=".dylib"
     dylib_ldflags="${darwin_dylib_ldflags}"
     MAJR_VERSION=`echo "${PACKAGE_VERSION}" | sed  -e "s/[\.][1-9]$/.0/"`
-    LIBR_LDFLAGS="-install_name libR.dylib -compatibility_version ${MAJR_VERSION}  -current_version ${PACKAGE_VERSION}  -headerpad_max_install_names"
-    RLAPACK_LDFLAGS="-install_name libRlapack.dylib -compatibility_version ${MAJR_VERSION} -current_version ${PACKAGE_VERSION}  -headerpad_max_install_names"
+    LIBR_LDFLAGS="-install_name ${PREFIX}/lib/R/lib/libR.dylib -compatibility_version ${MAJR_VERSION}  -current_version ${PACKAGE_VERSION}  -headerpad_max_install_names"
+    RLAPACK_LDFLAGS="-install_name ${PREFIX}/lib/R/lib/libRlapack.dylib -compatibility_version ${MAJR_VERSION} -current_version ${PACKAGE_VERSION}  -headerpad_max_install_names"
     ## don't use version in libRblas so we can replace it with any BLAS implementation
-    RBLAS_LDFLAGS="-install_name libRblas.dylib -headerpad_max_install_names"
+    RBLAS_LDFLAGS="-install_name ${PREFIX}/lib/R/lib/libRblas.dylib -headerpad_max_install_names"
     ;;
   hpux*)
     ## Needs to avoid embedding a relative path ../../../bin.
@@ -29106,6 +29123,14 @@ _ACEOF
 ## Cygwin had rintl but not nearbyintl
 for ac_func in expm1 hypot log1p log1pl log2 log10 nearbyint nearbyintl powl rint rintl
 do
+case $ac_func in
+expm1|log1p|log2|log10|nearbyint|nearbyintl|rint|rintl)
+    args="x"
+    ;;
+hypot|powl)
+    args="x,x"
+    ;;
+esac
 as_ac_Symbol=`$as_echo "ac_cv_have_decl_$ac_func" | $as_tr_sh`
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $ac_func exists and is declared" >&5
 $as_echo_n "checking whether $ac_func exists and is declared... " >&6; }
@@ -29115,24 +29140,12 @@ else
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <math.h>
+volatile long double x;
 
-#ifdef F77_DUMMY_MAIN
-
-#  ifdef __cplusplus
-     extern "C"
-#  endif
-   int F77_DUMMY_MAIN() { return 1; }
-
-#endif
 int
 main ()
 {
-#ifndef $ac_func
-  char *p = (char *) $ac_func;
-#endif
-
-  ;
-  return 0;
+  return $ac_func($args);;;
 }
 _ACEOF
 if ac_fn_c_try_link "$LINENO"; then :
@@ -32092,6 +32105,14 @@ cat > conftest.c <<EOF
 # define F77_SYMBOL(x)   x
 #endif
 extern void F77_SYMBOL(test1)(int *iflag);
+ifdef F77_DUMMY_MAIN
+
+#  ifdef __cplusplus
+     extern "C"
+#  endif
+   int F77_DUMMY_MAIN() { return 1; }
+
+#endif
 
 int main () {
   int iflag;
@@ -32157,6 +32178,15 @@ else
 #else
 # define F77_SYMBOL(x)   x
 #endif
+#ifdef F77_DUMMY_MAIN
+
+#  ifdef __cplusplus
+     extern "C"
+#  endif
+   int F77_DUMMY_MAIN() { return 1; }
+
+#endif
+
 void F77_SYMBOL(xerbla)(char *srname, int *info)
 {}
 void blas_set () {
@@ -41516,7 +41546,7 @@ case "${host_os}" in
     r_ld_library_defaults="/usr/lib64:/lib64:/usr/lib:/lib"
     ;;
   solaris*)
-    r_ld_library_defaults="/usr/lib:/lib"
+    r_ld_library_defaults="/usr/lib:/lib:/usr/lib/amd64:/lib/amd64:/usr/lib/64:/lib/64"
     ;;
   *)
     r_ld_library_defaults=
