ignite-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ivan Daschinsky <ivanda...@gmail.com>
Subject Re: Re[2]: [DISCUSSION] Ignite.C++ and CMake
Date Mon, 01 Jun 2020 10:21:48 GMT
Igor, could you please check my PR?

пт, 29 мая 2020 г. в 15:28, Ivan Daschinsky <ivandasch@gmail.com>:

> 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 <arzamas123@mail.ru.invalid
> >:
>
>>
>>
>> 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 < ivandasch@gmail.com >:
>> >
>> >> 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 <
>> ilya.kasnacheev@gmail.com >:
>> >>
>> >> > 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 < ivandasch@gmail.com
>:
>> >> >
>> >> > > 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 < ivandasch@gmail.com
>> >:
>> >> > >
>> >> > > > Stephen, looks great! I do mostly the same things in C++
code.
>> Thank
>> >> > you!
>> >> > > >
>> >> > > > вт, 26 мая 2020 г. в 18:33, Stephen Darlington <
>> >> > > >  stephen.darlington@gridgain.com >:
>> >> > > >
>> >> > > >> 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 <
>> ivandasch@gmail.com >
>> >> > > 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
<
>> >> > >  ilya.kasnacheev@gmail.com
>> >> > > >> >:
>> >> > > >> >
>> >> > > >> >> 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
<
>> ivandasch@gmail.com
>> >> >:
>> >> > > >> >>
>> >> > > >> >>> 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 <
>> >>  nizhikov@apache.org
>> >> > >:
>> >> > > >> >>>
>> >> > > >> >>>> 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 <
>> >> > >  ilya.kasnacheev@gmail.com
>> >> > > >> >
>> >> > > >> >>>> написал(а):
>> >> > > >> >>>>>
>> >> > > >> >>>>> 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 <
>> isapego@apache.org >:
>> >> > > >> >>>>>
>> >> > > >> >>>>>> 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 <
>> >> > > >> >>>>>>  kukushkinalexey@gmail.com >
>> >> > > >> >>>>>> 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 <
>> >> > >  ptupitsyn@apache.org
>> >> > > >> >:
>> >> > > >> >>>>>>>
>> >> > > >> >>>>>>>> +1
>> >> > > >> >>>>>>>>
>> >> > > >> >>>>>>>> On Tue, May 26, 2020
at 12:02 PM Zhenya Stanilovsky
>> >> > > >> >>>>>>>> < arzamas123@mail.ru.invalid
> 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

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message