diff --git a/configure b/configure
index 95649f97482996d8351787b93ac11c7582a206ba..9280b4ea05ce46b4694db8b265eb80e454630701 100755
--- a/configure
+++ b/configure
@@ -860,7 +860,7 @@ CC      ?= $cc\n";
     
     if($ld)
     {
-        print FP "LD   := $ld\n";
+        print FP "LD   ?= $ld\n";
 	print FP "LD_LIBRARY_PATH   ?= $ldpath\n"if($ldpath);
 	print FP "LDFLAGS   ?= $ldflags\n"if($ldflags);
     }
@@ -1746,7 +1746,8 @@ sub features
         # CPU has AVX or not?
         have_avx =>
         {
-            check =>($cpuinfo{flags}=~/\bavx\b/) ? 1 : 0,
+            check =>(!$generic && 
+                     $cpuinfo{flags}=~/\bavx\b/) ? 1 : 0,
             cflags => ' -mavx ',
         },
         
@@ -1803,7 +1804,7 @@ sub features
 
         have_drand48 =>
         {
-            check => scalar(!$generic &&
+            check => scalar(#!$generic &&
                 checklib('libc') &&
                 test_for_header_file('stdlib.h') &&
                 header_file_contents('stdlib.h')=~/extern\s+int\s+drand48_r/)