llvm-project/clang/test/VFS/subframework-symlink.m
Reid Kleckner 780d30660e [VFS] Don't run symlink test on Windows, it may pass or fail
This test was XFAILed because of symlinks, but some versions of ln -s
seem to work on Windows, so the test was unexpectedly passing on our
bot:
http://lab.llvm.org:8011/builders/clang-x64-windows-msvc/builds/13233
Unexpected Passing Tests (1):
    Clang :: VFS/subframework-symlink.m

I don't know how or why, but it seems dependent on system configuration,
and is not something worth debugging. Avoid the problem by marking the
test UNSUPPORTED: system-windows instead of XFAIL: system-windows.
2019-12-27 10:39:47 -08:00

25 lines
1.2 KiB
Objective-C

// FIXME: PR44221
// UNSUPPORTED: system-windows
// Test that when a subframework is a symlink to another framework, we don't
// add it as a submodule to the enclosing framework. We also need to make clang
// to infer module for the enclosing framework. For this we don't have
// a module map for the framework itself but have it in a parent directory.
//
// RUN: rm -rf %t
// RUN: mkdir %t
// RUN: echo 'framework module * {}' > %t/module.modulemap
// RUN: mkdir -p %t/WithSubframework.framework/Headers
// RUN: echo '#include <Foo/Foo.h>' > %t/WithSubframework.framework/Headers/WithSubframework.h
// RUN: cp -R %S/Inputs/Foo.framework %t
// RUN: mkdir -p %t/WithSubframework.framework/Frameworks
// RUN: ln -s %t/Foo.framework %t/WithSubframework.framework/Frameworks
// RUN: %clang_cc1 -fmodules -fimplicit-module-maps -fmodules-cache-path=%t/cache1 -F %t -fsyntax-only %s
// Adding VFS overlay shouldn't change this behavior.
//
// RUN: sed -e "s@INPUT_DIR@/InvalidPath@g" -e "s@OUT_DIR@/InvalidPath@g" %S/Inputs/vfsoverlay.yaml > %t/overlay.yaml
// RUN: %clang_cc1 -fmodules -fimplicit-module-maps -fmodules-cache-path=%t/cache2 -F %t -fsyntax-only %s -ivfsoverlay %t/overlay.yaml
#import <WithSubframework/WithSubframework.h>