Index: config/init/defaults.pm
===================================================================
--- config/init/defaults.pm	(revision 18103)
+++ config/init/defaults.pm	(working copy)
@@ -206,11 +206,14 @@
     my $m        = $conf->options->get('m');
     my $archname = $Config{archname};
     if ($m) {
-        if ( $archname =~ /x86_64/ && $m eq '32' ) {
-            $archname =~ s/x86_64/i386/;
+        if ( $archname =~ /(?:x86_64|amd64)/ && $m eq '32' ) {
+            $archname =~ s/(?:x86_64|amd64)/i386/;
 
             # adjust gcc?
-            for my $cc qw(cc cxx link ld) {
+            for my $cc qw(ccflags cxxflags linkflags ldflags) {
+                if ($archname =~ /(?:freebsd)/) {
+                    $conf->data->add( ' ', $cc, '-L/usr/lib32 -B/usr/lib32' );
+                }
                 $conf->data->add( ' ', $cc, '-m32' );
             }
 
