1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 10:42:39 +01:00

[lit] Actually do normalize the case of files in the config map.

This has gone back and forth, but it seems this is necessary
after all.  realpath is not sufficient because if you have a
file named 'C:\foo.txt', then both realpath('c:\foo.txt') and
realpath(C:\foo.txt') return the string that was passed to them
exactly as is, meaning the case of the drive-letter won't match.

The problem before was not that we were normalizing the case of
items going into the config map, but rather that we were
normalizing the case of something we needed to print.  The value
that is used to key on the config map should never be printed.

llvm-svn: 313918
This commit is contained in:
Zachary Turner 2017-09-21 21:27:11 +00:00
parent a649dfc42e
commit 1e564b48a1
4 changed files with 6 additions and 2 deletions

View File

@ -54,6 +54,7 @@ def getTestSuite(item, litConfig, cache):
config_map = litConfig.params.get('config_map') config_map = litConfig.params.get('config_map')
if config_map: if config_map:
cfgpath = os.path.realpath(cfgpath) cfgpath = os.path.realpath(cfgpath)
cfgpath = os.path.normcase(cfgpath)
target = config_map.get(cfgpath) target = config_map.get(cfgpath)
if target: if target:
cfgpath = target cfgpath = target

View File

@ -3,8 +3,10 @@ import os
import sys import sys
main_config = sys.argv[1] main_config = sys.argv[1]
main_config = os.path.realpath(main_config)
main_config = os.path.normcase(main_config)
config_map = {os.path.realpath(main_config) : sys.argv[2]} config_map = {main_config : sys.argv[2]}
builtin_parameters = {'config_map' : config_map} builtin_parameters = {'config_map' : config_map}
if __name__=='__main__': if __name__=='__main__':

View File

@ -45,7 +45,7 @@
# CHECK-CONFIG-MAP-ERR: loading suite config '{{.*}}lit.alt.cfg' # CHECK-CONFIG-MAP-ERR: loading suite config '{{.*}}lit.alt.cfg'
# CHECK-CONFIG-MAP-ERR: loaded config '{{.*}}lit.alt.cfg' # CHECK-CONFIG-MAP-ERR: loaded config '{{.*}}lit.alt.cfg'
# CHECK-CONFIG-MAP-ERR: resolved input '{{.*config-map-discovery[/\\]main-config}}' to 'config-map'::() # CHECK-CONFIG-MAP-ERR: resolved input '{{.*(/|\\\\)config-map-discovery(/|\\\\)main-config}}' to 'config-map'::()
# Check discovery when exact test names are given. # Check discovery when exact test names are given.

View File

@ -8,6 +8,7 @@ config_map = {}
def map_config(source_dir, site_config): def map_config(source_dir, site_config):
global config_map global config_map
source_dir = os.path.realpath(source_dir) source_dir = os.path.realpath(source_dir)
source_dir = os.path.normcase(source_dir)
site_config = os.path.normpath(site_config) site_config = os.path.normpath(site_config)
config_map[source_dir] = site_config config_map[source_dir] = site_config