--- ./configpm-pre	Sun Nov 28 07:48:14 2004
+++ ./configpm	Sat Sep  3 20:24:34 2005
@@ -476,14 +476,19 @@ sub launcher {
 ENDOFEND
 
 if ($^O eq 'os2') {
-    print CONFIG <<'ENDOFSET';
-my %preconfig;
-if ($OS2::is_aout) {
-    my ($value, $v) = $Config_SH_expanded =~ m/^used_aout='(.*)'\s*$/m;
-    for (split ' ', $value) {
-        ($v) = $Config_SH_expanded =~ m/^aout_$_='(.*)'\s*$/m;
-        $preconfig{$_} = $v eq 'undef' ? undef : $v;
+    my (@preconf, $preconf);
+    for (split ' ', $Config_SH_expanded =~ m/^used_aout='(.*)'\s*$/m) {
+        my ($v) = $Config_SH_expanded =~ m/^aout_$_='(.*)'\s*$/m or next;
+        push @preconf, "$_ => " . ($v eq 'undef' ? 'undef' : "'$v'");
     }
+    $preconf = join ",\n\t\t", @preconf;
+    print CONFIG <<ENDOFSET;
+my %preconfig;
+if (\$OS2::is_aout) {
+    my (\$value, \$v);
+    %preconfig = ($preconf);
+ENDOFSET
+    print CONFIG <<'ENDOFSET';
 }
 $preconfig{d_fork} = undef unless $OS2::can_fork; # Some funny cases can't
 sub TIEHASH { bless {%preconfig} }
