diff --git a/src/tools/msvc/Install.pm b/src/tools/msvc/Install.pm
index 18bded431fe6b69288f1d856dfaf4976c16636c2..d8ef98e4f7afd633e0bbe9a5c9f601272d55de12 100644
--- a/src/tools/msvc/Install.pm
+++ b/src/tools/msvc/Install.pm
@@ -381,8 +381,8 @@ sub GenerateTimezoneFiles
 	my $mf     = read_file("src/timezone/Makefile");
 	$mf =~ s{\\\r?\n}{}g;
 
-	$mf =~ /^TZDATA\s*:?=\s*(.*)$/m
-	  || die "Could not find TZDATA line in timezone makefile\n";
+	$mf =~ /^TZDATAFILES\s*:?=\s*(.*)$/m
+	  || die "Could not find TZDATAFILES line in timezone makefile\n";
 	my @tzfiles = split /\s+/, $1;
 
 	$mf =~ /^POSIXRULES\s*:?=\s*(.*)$/m
@@ -397,7 +397,8 @@ sub GenerateTimezoneFiles
 	foreach (@tzfiles)
 	{
 		my $tzfile = $_;
-		push(@args, "src/timezone/data/$tzfile");
+		$tzfile =~ s|\$\(srcdir\)|src/timezone|;
+		push(@args, $tzfile);
 	}
 
 	system(@args);