Browse code

Autojunk'd, to include libiconv detection changes.

Micah Snyder authored on 2019/05/15 05:54:22
Showing 1 changed files
... ...
@@ -1747,7 +1747,9 @@ Optional Packages:
1747 1747
   --without-libbz2-prefix     don't search for libbz2 in includedir and libdir
1748 1748
   --with-systemdsystemunitdir=DIR
1749 1749
                           Directory for systemd service files
1750
-  --with-iconv            supports iconv() [default=auto]
1750
+  --with-iconv[=DIR]      path to directory containing libiconv
1751
+                          [default=/usr/local or /usr if not found in
1752
+                          /usr/local]
1751 1753
   --with-user[=uid]       name of the clamav user [default=clamav]
1752 1754
   --with-group[=gid]      name of the clamav group [default=clamav]
1753 1755
   --with-version[=STR]    use custom version string (dev only)
... ...
@@ -24734,21 +24736,89 @@ fi
24734 24734
 
24735 24735
 
24736 24736
 
24737
+want_iconv="sure"
24738
+have_iconv="no"
24739
+have_iconv_lib="no"
24740
+
24741
+save_LDFLAGS="$LDFLAGS"
24742
+save_LIBS="$LIBS"
24743
+save_CPPFLAGS="$CPPFLAGS"
24744
+
24745
+ICONV_HOME=""
24746
+
24747
+
24737 24748
 # Check whether --with-iconv was given.
24738 24749
 if test "${with_iconv+set}" = set; then :
24739 24750
   withval=$with_iconv;
24740
- case "$withval" in
24741
-	 yes|no) wiconv="$withval";;
24742
-	 *) as_fn_error $? "--with-iconv does not take an argument" "$LINENO" 5;;
24743
- esac
24751
+        if test "X$withval" = "Xno"; then
24752
+            want_iconv="no"
24753
+        else
24754
+            want_iconv="yes"
24755
+
24756
+            if test "X$withval" = "Xyes"; then
24757
+                find_iconv="yes"
24758
+            else
24759
+                LDFLAGS="-L${withval}/lib -liconv"
24760
+                { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libiconv_open in -liconv" >&5
24761
+$as_echo_n "checking for libiconv_open in -liconv... " >&6; }
24762
+if ${ac_cv_lib_iconv_libiconv_open+:} false; then :
24763
+  $as_echo_n "(cached) " >&6
24764
+else
24765
+  ac_check_lib_save_LIBS=$LIBS
24766
+LIBS="-liconv  $LIBS"
24767
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
24768
+/* end confdefs.h.  */
24769
+
24770
+/* Override any GCC internal prototype to avoid an error.
24771
+   Use char because int might match the return type of a GCC
24772
+   builtin and then its argument prototype would still apply.  */
24773
+#ifdef __cplusplus
24774
+extern "C"
24775
+#endif
24776
+char libiconv_open ();
24777
+int
24778
+main ()
24779
+{
24780
+return libiconv_open ();
24781
+  ;
24782
+  return 0;
24783
+}
24784
+_ACEOF
24785
+if ac_fn_c_try_link "$LINENO"; then :
24786
+  ac_cv_lib_iconv_libiconv_open=yes
24787
+else
24788
+  ac_cv_lib_iconv_libiconv_open=no
24789
+fi
24790
+rm -f core conftest.err conftest.$ac_objext \
24791
+    conftest$ac_exeext conftest.$ac_ext
24792
+LIBS=$ac_check_lib_save_LIBS
24793
+fi
24794
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_iconv_libiconv_open" >&5
24795
+$as_echo "$ac_cv_lib_iconv_libiconv_open" >&6; }
24796
+if test "x$ac_cv_lib_iconv_libiconv_open" = xyes; then :
24797
+
24798
+                        ICONV_HOME="${withval}"
24799
+                        have_iconv_lib="yes"
24800
+
24744 24801
 else
24745
-   wiconv=auto
24802
+
24803
+                        as_fn_error $? "Failed to find iconv (libiconv) in ${withval}" "$LINENO" 5
24804
+
24746 24805
 fi
24747 24806
 
24748
-if test "X$wiconv" != "Xno"; then
24749
-        save_LDFLAGS="$LDFLAGS"
24807
+            fi
24808
+        fi
24809
+
24810
+else
24811
+
24812
+        find_iconv="yes"
24813
+
24814
+fi
24815
+
24816
+
24817
+if test "X$want_iconv" != "Xno"; then
24818
+    if test "X$find_iconv" = "Xyes"; then
24750 24819
         LDFLAGS="-L/usr/local/lib -liconv"
24751
-        ICONV_HOME=""
24752 24820
         { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libiconv_open in -liconv" >&5
24753 24821
 $as_echo_n "checking for libiconv_open in -liconv... " >&6; }
24754 24822
 if ${ac_cv_lib_iconv_libiconv_open+:} false; then :
... ...
@@ -24786,11 +24856,14 @@ fi
24786 24786
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_iconv_libiconv_open" >&5
24787 24787
 $as_echo "$ac_cv_lib_iconv_libiconv_open" >&6; }
24788 24788
 if test "x$ac_cv_lib_iconv_libiconv_open" = xyes; then :
24789
-  ICONV_HOME="/usr/local"
24789
+
24790
+                ICONV_HOME="/usr/local"
24791
+                have_iconv_lib="yes"
24792
+
24790 24793
 else
24791 24794
 
24792
-          LDFLAGS="-L/usr/lib -liconv"
24793
-          { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libiconv_open in -liconv" >&5
24795
+                LDFLAGS="-L/usr/lib -liconv"
24796
+                { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libiconv_open in -liconv" >&5
24794 24797
 $as_echo_n "checking for libiconv_open in -liconv... " >&6; }
24795 24798
 if ${ac_cv_lib_iconv_libiconv_open+:} false; then :
24796 24799
   $as_echo_n "(cached) " >&6
... ...
@@ -24827,42 +24900,49 @@ fi
24827 24827
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_iconv_libiconv_open" >&5
24828 24828
 $as_echo "$ac_cv_lib_iconv_libiconv_open" >&6; }
24829 24829
 if test "x$ac_cv_lib_iconv_libiconv_open" = xyes; then :
24830
-  ICONV_HOME="/usr"
24830
+
24831
+                        ICONV_HOME="/usr"
24832
+                        have_iconv_lib="yes"
24833
+
24831 24834
 else
24832
-  LDFLAGS="$save_LDFLAGS"
24835
+
24836
+                        if test "X$want_iconv" = "Xyes"; then
24837
+                            as_fn_error $? "Failed to find iconv (libiconv) in /usr or /usr/local" "$LINENO" 5
24838
+                        fi
24839
+
24833 24840
 fi
24834 24841
 
24835 24842
 
24836 24843
 fi
24837 24844
 
24838
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for iconv" >&5
24839
-$as_echo_n "checking for iconv... " >&6; }
24840
-        save_LIBS="$LIBS"
24841
-        save_CPPFLAGS="$CPPFLAGS"
24845
+    fi
24846
+
24847
+    if test "X$have_iconv_lib" = "Xyes"; then
24842 24848
         LIBS="$LIBCLAMAV_LIBS"
24843 24849
         if test "X$ICONV_HOME" != "X"; then
24844
-          ICONV_LDFLAGS="$LDFLAGS"
24845
-          ICONV_CPPFLAGS="-I$ICONV_HOME/include"
24850
+            ICONV_LDFLAGS="$LDFLAGS"
24851
+            ICONV_CPPFLAGS="-I$ICONV_HOME/include"
24846 24852
         else
24847
-          ICONV_LDFLAGS=""
24848
-          ICONV_CPPFLAGS=""
24853
+            ICONV_LDFLAGS=""
24854
+            ICONV_CPPFLAGS=""
24849 24855
         fi
24850 24856
         CPPFLAGS="$ICONV_CPPFLAGS $LIBCLAMAV_CPPFLAGS"
24857
+
24851 24858
         cat confdefs.h - <<_ACEOF >conftest.$ac_ext
24852 24859
 /* end confdefs.h.  */
24853 24860
 
24854
-		     #include <iconv.h>
24861
+                #include <iconv.h>
24855 24862
 
24856 24863
 int
24857 24864
 main ()
24858 24865
 {
24859 24866
 
24860
-	  char** xin,**xout;
24861
-	  unsigned long il,ol;
24862
-	  int rc;
24863
-	  iconv_t iconv_struct = iconv_open("UTF-16BE","UTF-8");
24864
-	  rc = iconv(iconv_struct,xin,&il,xout,&ol);
24865
-	  iconv_close(iconv_struct);
24867
+                char** xin,**xout;
24868
+                unsigned long il,ol;
24869
+                int rc;
24870
+                iconv_t iconv_struct = iconv_open("UTF-16BE","UTF-8");
24871
+                rc = iconv(iconv_struct,xin,&il,xout,&ol);
24872
+                iconv_close(iconv_struct);
24866 24873
 
24867 24874
   ;
24868 24875
   return 0;
... ...
@@ -24870,26 +24950,43 @@ main ()
24870 24870
 _ACEOF
24871 24871
 if ac_fn_c_try_link "$LINENO"; then :
24872 24872
 
24873
-          { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
24874
-$as_echo "yes" >&6; }
24873
+                have_iconv="yes"
24875 24874
 
24876
-$as_echo "#define HAVE_ICONV 1" >>confdefs.h
24875
+else
24877 24876
 
24877
+                if test "X$want_iconv" = "Xyes"; then
24878
+                    as_fn_error $? "The libiconv link test failed. Your libiconv installation may be misconfigured." "$LINENO" 5
24879
+                else
24880
+                    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: The libiconv found, but link test failed. Your libiconv installation may be misconfigured. iconv will not be available." >&5
24881
+$as_echo "$as_me: WARNING: The libiconv found, but link test failed. Your libiconv installation may be misconfigured. iconv will not be available." >&2;}
24882
+                fi
24878 24883
 
24884
+fi
24885
+rm -f core conftest.err conftest.$ac_objext \
24886
+    conftest$ac_exeext conftest.$ac_ext
24887
+    fi
24888
+fi
24879 24889
 
24880 24890
 
24881
-else
24891
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for libiconv installation" >&5
24892
+$as_echo_n "checking for libiconv installation... " >&6; }
24882 24893
 
24883
-	  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
24894
+if test "X$have_iconv" = "Xno"; then
24895
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
24884 24896
 $as_echo "no" >&6; }
24897
+else
24898
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ICONV_HOME" >&5
24899
+$as_echo "$ICONV_HOME" >&6; }
24900
+
24901
+$as_echo "#define HAVE_ICONV 1" >>confdefs.h
24902
+
24903
+
24885 24904
 
24886 24905
 fi
24887
-rm -f core conftest.err conftest.$ac_objext \
24888
-    conftest$ac_exeext conftest.$ac_ext
24889
-        LIBS="$save_LIBS"
24890
-        LDFLAGS="$save_LDFLAGS"
24891
-        CPPFLAGS="$save_CPPFLAGS"
24892
-fi
24906
+
24907
+LIBS="$save_LIBS"
24908
+LDFLAGS="$save_LDFLAGS"
24909
+CPPFLAGS="$save_CPPFLAGS"
24893 24910
 
24894 24911
 have_pthreads=no
24895 24912
 ac_fn_c_check_header_mongrel "$LINENO" "pthread.h" "ac_cv_header_pthread_h" "$ac_includes_default"
... ...
@@ -35825,6 +35922,35 @@ fi
35825 35825
 
35826 35826
 { $as_echo "$as_me:${as_lineno-$LINENO}: Summary of engine detection features" >&5
35827 35827
 $as_echo "$as_me: Summary of engine detection features" >&6;}
35828
+if test "X$have_iconv" = "Xyes"; then
35829
+
35830
+
35831
+   $as_echo_n "              iconv       : "
35832
+   if test "x" = "xno"; then :
35833
+  $as_echo "yes, from $ICONV_HOME (disabled)"
35834
+elif test "x" = "xyes"; then :
35835
+  $as_echo "yes, from $ICONV_HOME"
35836
+elif test "x" = "x"; then :
35837
+  $as_echo "yes, from $ICONV_HOME"
35838
+else
35839
+  $as_echo "yes, from $ICONV_HOME ()"
35840
+fi
35841
+
35842
+else
35843
+
35844
+
35845
+   $as_echo_n "              iconv       : "
35846
+   if test "x" = "xno"; then :
35847
+  $as_echo "no (disabled)"
35848
+elif test "x" = "xyes"; then :
35849
+  $as_echo "no"
35850
+elif test "x" = "x"; then :
35851
+  $as_echo "no"
35852
+else
35853
+  $as_echo "no ()"
35854
+fi
35855
+
35856
+fi
35828 35857
 
35829 35858
 
35830 35859
    $as_echo_n "              bzip2       : "