These are chat archives for symengine/symengine

7th
Dec 2015
Ondřej Čertík
@certik
Dec 07 2015 14:40
@bluescarni I saw that blog post. I think that's very exciting.
I wonder if they are experimenting with this to see if they can use this this by default for MSVC?
The author of cmake, Bill Hoffman, will be visiting LANL (where I work) tomorrow. Do we have any questions regarding cmake? We still didn't resolve #458, so I plan to ask him about it. If anybody has any other things you want me to ask, let me know.
Isuru Fernando
@isuruf
Dec 07 2015 14:50

@certik, http://www.theregister.co.uk/2015/10/21/microsoft_promises_clang_for_windows_in_november_visual_c_update/

Carroll added that Microsoft is not abandoning C1 but will continue to improve it.

About CMake, we have a SymEngineConfig.cmake that handles dependencies. Is there a standard way to do that?
Ondřej Čertík
@certik
Dec 07 2015 15:28
I like that Microsoft started to work with and contribute to open source (where it makes sense) instead of fighting against it. I think it is beneficial for everybody in the end.
@isuruf I'll ask about the SymEngineConfig.cmake stuff.
Isuru Fernando
@isuruf
Dec 07 2015 15:32
Use case of relative paths would be conda. First you build symengine against conda's gmp. Another user will install both and try to build symengine.py. Then symengine.py will find symengine and through SymEngineConfig.cmake find gmp with a relative path.
So, in SymEngineConfig.cmake, it's useful to first look at the full path of the dependencies and then the relative path
Ondřej Čertík
@certik
Dec 07 2015 15:35
Well, if users use Conda, why not to use conda to also build symengine.py?
Isuru Fernando
@isuruf
Dec 07 2015 15:35
Then the user has to build gmp and symengine also
Ondřej Čertík
@certik
Dec 07 2015 15:35
But let's say the user doesn't want.
So then why cannot the user point symengine.py where the gmp is?
(if it is not where it was when symengine was built)
Isuru Fernando
@isuruf
Dec 07 2015 15:36
That's possible.
Ondřej Čertík
@certik
Dec 07 2015 15:38
With our current design, it should still find the user specified place before the relative one, shouldn't it?
Isuru Fernando
@isuruf
Dec 07 2015 15:38
Yes
Ondřej Čertík
@certik
Dec 07 2015 15:38
I will ask Bill what the cmake philosophy is here.
Isuru Fernando
@isuruf
Dec 07 2015 15:40
Yes. that would be useful. Also note that gmp and symengine both were moved. (when a user installs a pre-built gmp and symengine)
Ondřej Čertík
@certik
Dec 07 2015 16:05
Essentially it is the utility of SymEngineConfig.cmake for binary packages.
Francesco Biscani
@bluescarni
Dec 07 2015 22:35
@certik Not sure if they will ever switch to clang as default. From an outsider's perspective, it seems like it would make a ton of sense, as the current MSVC compiler is antiquate to the point that it's next to impossible to implement certain modern C++ features
but there might be other considerations at play, it's difficult to tell with Microsoft... maybe they need to be backwards-compatible with buggy MSVC behaviour, who knows