open( my $makefile, '<', $0) or die "Could not open $0: $!\n"; $_ = do {local $/; <$makefile>}; if (($_) = m#PREREQ_PM\s*=>\s*{([^}]+)}#) { my @module = map {s#['"]##g; $_} m#(\S+)\s*=>#sg; open( my $readme, '<', 'README' ) or die "Could not open README: $!\n"; $_ = do {local $/; <$readme>}; if (s#(\nRequired Modules:\n)(?:.*?)(\n\n)#"$1 ".(do {local $"="\n ","@module"}).$2#se) { open( $readme, '>', 'README' ) or die "Could not open README: $!\n"; print $readme $_; } }