Repository: conan-io/conan

Issue:
Add support for XCode 11 (apple_clang: 11.0)
Would be nice to have `apple_clang: version: "11.0"` in default `settings.yml`


Discussion:
Hi @dBagrat 

Is this a release version, or still in beta (it seems so)?
No problem to add it to settings.yml for next release, I think.
Also, it would be nice to know if the default ``"apple-clang": "gnu98"`` C++ standard is going to keep exactly the same, or it will change in the 11.0 release?

It doesnt seem so from https://developer.apple.com/documentation/xcode_release_notes/xcode_11_beta_release_notes
> Is this a release version, or still in beta (it seems so)?
>
It is beta, and will stay beta for a few months, but iOS developers often use it for the production too, for example: making their apps compatible with the latest beta OS's.

> No problem to add it to settings.yml for next release, I think.
>
Thank you! :)

//btw, at this moment, everything builds with only (manually added) "11.0" "apple-clang" value.
Hi,

We have installed command lines tool on macos mojave now and the compiler already is version 11 and now we are locked due to its limitation.

```
> clang --version

Apple clang version 11.0.0 (clang-1100.0.20.17)
Target: x86_64-apple-darwin18.5.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin

```

The conan created profile

```
[settings]
os=Macos
os_build=Macos
arch=x86_64
arch_build=x86_64
compiler=apple-clang
compiler.version=11.0
compiler.libcxx=libc++
build_type=Release
[options]
[build_requires]
[env]

```

The conan error message:

`Possible values are ['10.0', '5.0', '5.1', '6.0', '6.1', '7.0', '7.3', '8.0', '8.1', '9.0', '9.1’]`

Thanks.

Resolving patch:
diff --git a/conans/client/conf/__init__.py b/conans/client/conf/__init__.py
--- a/conans/client/conf/__init__.py
+++ b/conans/client/conf/__init__.py
@@ -83,7 +83,7 @@
         libcxx: [libstdc++, libstdc++11, libc++, c++_shared, c++_static]
         cppstd: [None, 98, gnu98, 11, gnu11, 14, gnu14, 17, gnu17, 20, gnu20]
     apple-clang:
-        version: ["5.0", "5.1", "6.0", "6.1", "7.0", "7.3", "8.0", "8.1", "9.0", "9.1", "10.0"]
+        version: ["5.0", "5.1", "6.0", "6.1", "7.0", "7.3", "8.0", "8.1", "9.0", "9.1", "10.0", "11.0"]
         libcxx: [libstdc++, libc++]
         cppstd: [None, 98, gnu98, 11, gnu11, 14, gnu14, 17, gnu17, 20, gnu20]
     qcc:


Test patch:
diff --git a/conans/test/unittests/client/build/cpp_std_flags_test.py b/conans/test/unittests/client/build/cpp_std_flags_test.py
--- a/conans/test/unittests/client/build/cpp_std_flags_test.py
+++ b/conans/test/unittests/client/build/cpp_std_flags_test.py
@@ -159,6 +159,7 @@ def test_apple_clang_cppstd_flags(self):
         self.assertEqual(cppstd_flag("apple-clang", "9.1", "17"), "-std=c++17")
 
         self.assertEqual(cppstd_flag("apple-clang", "10.0", "17"), "-std=c++17")
+        self.assertEqual(cppstd_flag("apple-clang", "11.0", "17"), "-std=c++17")
 
     def test_apple_clang_cppstd_defaults(self):
         self.assertEqual(cppstd_default("apple-clang", "2"), "gnu98")
@@ -170,6 +171,7 @@ def test_apple_clang_cppstd_defaults(self):
         self.assertEqual(cppstd_default("apple-clang", "8"), "gnu98")
         self.assertEqual(cppstd_default("apple-clang", "9"), "gnu98")
         self.assertEqual(cppstd_default("apple-clang", "10"), "gnu98")
+        self.assertEqual(cppstd_default("apple-clang", "11"), "gnu98")
 
     def test_visual_cppstd_flags(self):
         self.assertEqual(cppstd_flag("Visual Studio", "12", "11"), None)