Hi folks. Patch is rigorously tested and with Igor Sapego help it is possible to build with cmake Ignite.C++ even on windows. But, it's required to make some TC suites and tune them, in order to patch be merged. Unfortunately, I am not a commiter and I doesn't have rights to create suites. Also, AFAIK, Igor currently is quite busy and doesn't have much time to do this task by himself. So I need some help from community. Is it possible to grant me some rights to TC agents?
ср, 3 июн. 2020 г. в 18:03, Nikolay Izhikov <[email protected]>: > Hello. > > I will do review of this changes. > > > 1 июня 2020 г., в 13:21, Ivan Daschinsky <[email protected]> > написал(а): > > > > Igor, could you please check my PR? > > > > пт, 29 мая 2020 г. в 15:28, Ivan Daschinsky <[email protected]>: > > > >> Thanks you all. Run patch (I've changed some code also) on TC -- all CPP > >> suites are green (GCC, CLang, Win64) > >> > >> пт, 29 мая 2020 г. в 15:02, Zhenya Stanilovsky > <[email protected] > >>> : > >> > >>> > >>> > >>> Ivan besides documentation [1] > >>> -s no — no works > >>> -- catch_system_errors =no — works properly well, tests are passed. > >>> > >>> boost 1.65 > >>> > >>> [1] > >>> > https://www.boost.org/doc/libs/1_65_0/libs/test/doc/html/boost_test/utf_reference/rt_param_reference/catch_system.html > >>> > >>>> Hello! > >>>> > >>>> I didn't check tests since I don't develop AI C++, merely use it as > user. > >>>> That's where we should wait for Igor Sapego to check. > >>>> > >>>> Regards, > >>>> -- > >>>> Ilya Kasnacheev > >>>> > >>>> > >>>> пт, 29 мая 2020 г. в 12:20, Ivan Daschinsky < [email protected] >: > >>>> > >>>>> Ilya, thanks a lot! What about tests? I found one flag that must be > >>>>> supplied to boost.tests. > >>>>> This flag should fix JVM crash of C++ suites on Linux. > >>>>> > >>>>> Zhenya Stanilovsky and me have checked, that without this flag tests > >>> failed > >>>>> with SIGSEGV early (boost catch this signal from jvm, but it is ok > for > >>>>> jvm). > >>>>> Flag is -catch_system_errors=no. I added it to CTest runner. You can > >>>>> invoke it manually and using make test ARGS="-V" > >>>>> > >>>>> > >>>>> > >>>>> пт, 29 мая 2020 г. в 11:54, Ilya Kasnacheev < > >>> [email protected] >: > >>>>> > >>>>>> Hello! > >>>>>> > >>>>>> Looks good to me! But we probably also ask Igor to take a look. > >>>>>> > >>>>>> Compiled debug and release, without and with odbc, checked running > >>> thick > >>>>>> node and ODBC connection on Linux. > >>>>>> > >>>>>> Regards, > >>>>>> -- > >>>>>> Ilya Kasnacheev > >>>>>> > >>>>>> > >>>>>> чт, 28 мая 2020 г. в 17:31, Ivan Daschinsky < [email protected] > >: > >>>>>> > >>>>>>> Ok, PR is ready > >>>>>>> https://issues.apache.org/jira/browse/IGNITE-13078 > >>>>>>> > >>>>>>> Build tested on Mac OS X 10.15 and Ubuntu 20.04 with CMake 3.17.2 > >>> and > >>>>>> 3.6.1 > >>>>>>> Unfortunately, I was not able to test on Windows, but principally > >>> it > >>>>>> should > >>>>>>> works, but minor issues are probable. > >>>>>>> > >>>>>>> Instruction is attached in PR. > >>>>>>> Any use reports are welcomed! > >>>>>>> > >>>>>>> вт, 26 мая 2020 г. в 18:51, Ivan Daschinsky < [email protected] > >>>> : > >>>>>>> > >>>>>>>> Stephen, looks great! I do mostly the same things in C++ code. > >>> Thank > >>>>>> you! > >>>>>>>> > >>>>>>>> вт, 26 мая 2020 г. в 18:33, Stephen Darlington < > >>>>>>>> [email protected] >: > >>>>>>>> > >>>>>>>>> Not sure if it’ll help, but I made some changes to get it > >>> working > >>>>> on a > >>>>>>>>> Mac with the current built system. There may be some code worth > >>>>>> taking. > >>>>>>>>> > >>>>>>>>> https://github.com/apache/ignite/pull/4872 < > >>>>>>>>> https://github.com/apache/ignite/pull/4872 > > >>>>>>>>> > >>>>>>>>> Regards, > >>>>>>>>> Stephen > >>>>>>>>> > >>>>>>>>>> On 26 May 2020, at 16:02, Ivan Daschinsky < > >>> [email protected] > > >>>>>>> wrote: > >>>>>>>>>> > >>>>>>>>>> I appreciate any help, thank you, Ilya. > >>>>>>>>>> > >>>>>>>>>> Currently I have a small PR without ticket (link in first > >>>>> post),but > >>>>>> I > >>>>>>>>>> decided not to file a jira issue before discussion. > >>>>>>>>>> Now I see, that this feature are of great interest to > >>> community. > >>>>> So > >>>>>> I > >>>>>>>>> file > >>>>>>>>>> a ticket, test myself on my home laptop (ubuntu 20.04) > >>>>>>>>>> and add detailed instructions to DEVNOTES.txt in a few days. > >>>>>>>>>> > >>>>>>>>>> I would be happy if my someone can follow the instruction and > >>>>> write > >>>>>>>>>> possible issues. > >>>>>>>>>> > >>>>>>>>>> I will notify about status update in this thread in next few > >>> days. > >>>>>>>>>> > >>>>>>>>>> Thank you all very much for support! > >>>>>>>>>> > >>>>>>>>>> > >>>>>>>>>> вт, 26 мая 2020 г. в 17:50, Ilya Kasnacheev < > >>>>>>> [email protected] > >>>>>>>>>> : > >>>>>>>>>> > >>>>>>>>>>> Hello! > >>>>>>>>>>> > >>>>>>>>>>> I will assist with checking on Linux if you would contribute > >>> a > >>>>>> patch. > >>>>>>>>>>> Please start with a ticket (or even an IEP maybe?) > >>>>>>>>>>> > >>>>>>>>>>> Regards, > >>>>>>>>>>> -- > >>>>>>>>>>> Ilya Kasnacheev > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>> вт, 26 мая 2020 г. в 16:47, Ivan Daschinsky < > >>> [email protected] > >>>>>> : > >>>>>>>>>>> > >>>>>>>>>>>> Guys, I will certainly thoroughly test my fix not only > >>> unices, > >>>>> but > >>>>>>> on > >>>>>>>>>>>> windows too. > >>>>>>>>>>>> And I will describe it very thoroughly. > >>>>>>>>>>>> > >>>>>>>>>>>> When I was C++ developer (more than 10 years ago), I have > >>> not > >>>>> any > >>>>>>>>> trouble > >>>>>>>>>>>> at all with CMake and Visual Studio 2005. > >>>>>>>>>>>> Everything works and works good. Moreover, you can build > >>> with > >>>>>> NMake, > >>>>>>>>>>>> msbuild and generate solutions for development. > >>>>>>>>>>>> > >>>>>>>>>>>> I suppose, for CI purposes, using NMake is a way better, > >>> than > >>>>> use > >>>>>> vs > >>>>>>>>>>>> solutions. > >>>>>>>>>>>> > >>>>>>>>>>>> вт, 26 мая 2020 г. в 16:42, Nikolay Izhikov < > >>>>> [email protected] > >>>>>>> : > >>>>>>>>>>>> > >>>>>>>>>>>>> Hello, Igor. > >>>>>>>>>>>>> > >>>>>>>>>>>>>> Nikolay, removing support for a certain build system is a > >>>>>> breaking > >>>>>>>>>>>>> change. > >>>>>>>>>>>>> > >>>>>>>>>>>>> No, it’s not. > >>>>>>>>>>>>> Why do you think so? > >>>>>>>>>>>>> > >>>>>>>>>>>>> Development environment and build system is a subject to > >>> change > >>>>>> in > >>>>>>>>> any > >>>>>>>>>>>>> project. > >>>>>>>>>>>>> We can drop or add support of any build system any time we > >>>>> want. > >>>>>>>>>>>>> > >>>>>>>>>>>>>> 26 мая 2020 г., в 16:35, Ilya Kasnacheev < > >>>>>>> [email protected] > >>>>>>>>>> > >>>>>>>>>>>>> написал(а): > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> Hello! > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> I don't see why we can't get rid of autotools in a minor > >>>>>> release, > >>>>>>>>>>>>> provided > >>>>>>>>>>>>>> that cmake actually works. Removing native VS support may > >>> be a > >>>>>>>>>>>> different > >>>>>>>>>>>>>> thing. > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> Build system and precise set of dependencies is not a > >>> part of > >>>>>>> public > >>>>>>>>>>>> API > >>>>>>>>>>>>> in > >>>>>>>>>>>>>> my opinion. > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> Regards, > >>>>>>>>>>>>>> -- > >>>>>>>>>>>>>> Ilya Kasnacheev > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> вт, 26 мая 2020 г. в 16:02, Igor Sapego < > >>> [email protected] >: > >>>>>>>>>>>>>> > >>>>>>>>>>>>>>> Great! > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> Let's start with creating a TC suite for it. > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> The only concern I have is that it is one more build > >>> system > >>>>>>>>>>>>>>> to support. Should we get rid of autotools in 3.0? > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> Best Regards, > >>>>>>>>>>>>>>> Igor > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> On Tue, May 26, 2020 at 2:44 PM Alexey Kukushkin < > >>>>>>>>>>>>>>> [email protected] > > >>>>>>>>>>>>>>> wrote: > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> +1. I recently completed a cross-IDE (MS Visual Studio & > >>>>>>> GCC/GDB) > >>>>>>>>>>>>> Ignite > >>>>>>>>>>>>>>>> C++ project and CMake in Ignite C++ would save me a day > >>> of > >>>>>>> effort. > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> вт, 26 мая 2020 г. в 12:09, Pavel Tupitsyn < > >>>>>>> [email protected] > >>>>>>>>>> : > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> +1 > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> On Tue, May 26, 2020 at 12:02 PM Zhenya Stanilovsky > >>>>>>>>>>>>>>>>> < [email protected] > wrote: > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> Ivan huge +1 with your proposal. > >>>>>>>>>>>>>>>>>> I had some problems with odbc tests building too, > >>> looks > >>>>> like > >>>>>>>>>>> cmake > >>>>>>>>>>>>>>> will > >>>>>>>>>>>>>>>>>> make it more easy. > >>>>>>>>>>>>>>>>>>> Hello Igniters. > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> I’d like to discuss porting build process of > >>> Ignite.C++. > >>>>> I > >>>>>>>>> think > >>>>>>>>>>>>>>> that > >>>>>>>>>>>>>>>>>> there is time to change it. > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> *Motivation* > >>>>>>>>>>>>>>>>>>> Currently, it is hard to build Ignite.C++. Different > >>>>> build > >>>>>>>>>>> process > >>>>>>>>>>>>>>> for > >>>>>>>>>>>>>>>>>> windows and linux, lack of building support on Mac OS > >>> X > >>>>>> (quite > >>>>>>>>>>>>>>> popular > >>>>>>>>>>>>>>>> OS > >>>>>>>>>>>>>>>>>> among developers), absolutely not IDE support, except > >>>>>> windows > >>>>>>>>> and > >>>>>>>>>>>>>>> only > >>>>>>>>>>>>>>>>>> Visual Studio is supported. > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> *Suggestion* > >>>>>>>>>>>>>>>>>>> I’d suggest to migrate to CMake build system. It is > >>> very > >>>>>>>>> popular > >>>>>>>>>>>>>>> among > >>>>>>>>>>>>>>>>>> open source projects, and in Apache Software > >>> Foundation > >>>>> too. > >>>>>>>>>>>> Notable > >>>>>>>>>>>>>>>>> user: > >>>>>>>>>>>>>>>>>> Apache Mesos, Apache Zookeeper (C client offers CMake > >>> as > >>>>> an > >>>>>>>>>>>>>>> alternative > >>>>>>>>>>>>>>>>> to > >>>>>>>>>>>>>>>>>> autoconf and only option on windows), Apache Kafka > >>>>>>> (librdkafka - > >>>>>>>>>>>>>>> C/C++ > >>>>>>>>>>>>>>>>>> client), Apache Thrift. Popular column-oriented > >>> database > >>>>>>>>>>> ClickHouse > >>>>>>>>>>>>>>>> also > >>>>>>>>>>>>>>>>>> uses CMake. > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> CMake is widely supported in many IDE’s on various > >>>>>> platforms, > >>>>>>>>>>>>>>> notably > >>>>>>>>>>>>>>>>>> Visual Studio, CLion, Xcode, QtCreator, KDevelop. > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> *Current status* > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> Currently, the most of work is done (see [1]) and > >>> tested > >>>>> on > >>>>>>> Mac > >>>>>>>>>>>> OS X > >>>>>>>>>>>>>>>>>> 10.15 (some C++ porting). All tests are run without > >>> any > >>>>>> flaws, > >>>>>>>>>>>>>>>> including > >>>>>>>>>>>>>>>>>> odbc (unixodbc), ssl, thin and thick client, > >>> installation, > >>>>>> IDE > >>>>>>>>>>>>>>>>> integration > >>>>>>>>>>>>>>>>>> (CLion). Next steps is to test linux and windows. > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> But full migration isn’t possible without agreement > >>> and > >>>>>> help > >>>>>>> of > >>>>>>>>>>>>>>>>>> community. Even if most of all you agree, migration > >>>>> requires > >>>>>>>>>>>>>>> additional > >>>>>>>>>>>>>>>>>> efforts in TC agents tuning and so on (event though > >>> test > >>>>>>> running > >>>>>>>>>>>>>>> fully > >>>>>>>>>>>>>>>>>> automated by CMake CTest). > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> Lets discuss my proposition and idea. > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> [1] - https://github.com/apache/ignite/pull/7845 > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> -- > >>>>>>>>>>>>>>>> Best regards, > >>>>>>>>>>>>>>>> Alexey > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> > >>>>>>>>>>>>> > >>>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> -- > >>>>>>>>>>>> Sincerely yours, Ivan Daschinskiy > >>>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>> > >>>>>>>>>> > >>>>>>>>>> -- > >>>>>>>>>> Sincerely yours, Ivan Daschinskiy > >>>>>>>>> > >>>>>>>>> > >>>>>>>>> > >>>>>>>> > >>>>>>>> -- > >>>>>>>> Sincerely yours, Ivan Daschinskiy > >>>>>>>> > >>>>>>> > >>>>>>> > >>>>>>> -- > >>>>>>> Sincerely yours, Ivan Daschinskiy > >>>>>>> > >>>>>> > >>>>> > >>>>> > >>>>> -- > >>>>> Sincerely yours, Ivan Daschinskiy > >>>>> > >>> > >>> > >>> > >>> > >> > >> > >> > >> -- > >> Sincerely yours, Ivan Daschinskiy > >> > > > > > > -- > > Sincerely yours, Ivan Daschinskiy > > -- Sincerely yours, Ivan Daschinskiy
