commschamp / comms

C++(11) library to implement custom binary communication protocols
https://commschamp.github.io
Mozilla Public License 2.0
42 stars 9 forks source link

FYI: vcpkg #1

Closed mathisloge closed 1 month ago

mathisloge commented 3 years ago

Hi Alex,

I've just updated the commschamp and commsdsl libs. Most patches are gone now. But I needed to patch the CC_CMAKE_DIR of the commsdsl project.

https://github.com/microsoft/vcpkg/pull/14521

In addition to that i've added the comms.ublox project. (the generated one)

https://github.com/microsoft/vcpkg/pull/14523

It should be merged soon.

arobenko commented 3 years ago

Hi Mathis, Thanks for letting me know. I've taken a quick look inside your pull requests and I think you missed "-D" prefix to some of the options:

vcpkg_configure_cmake(
        ...
        -OPT_NO_COMMS=ON
        -OPT_EXTERNALS_UPDATE_DISCONNECTED=ON
)

Also not that I finally started working on ublox-9 platform support, depending on number of required changes I'd say it will take about 2 - 4 weeks to finalize. I'll probably do it as 0.19.2 release (mostly because I want all the example cc.X.commsdsl and cc.X.generated projects to have the same major/minor versions).

mathisloge commented 3 years ago

Oh yeah, thats an issue. Thanks for taking a view.

I've saw the work on the feature branch. Sorry for not finishing the work on my PR last year. I had to shift my focus on other projects last year.

As soon as you will update the library, I'll make a new PR at vcpkg to update 👍

mathisloge commented 3 years ago

Should I add the other mqtt libraries aswell?

I've added the ublox because I don't really know any other library for the ubx protocol. Especially the new ubx-9.

arobenko commented 3 years ago

Don't think so, people usually want a MQTT client library to work with, not the protocol definition one. These protocol projects are just examples of how to use CommsChampion Ecosystem. There are heaps of other mqtt client libraries out there.

I have mqtt-sn project which uses cc.mqttsn.generated and cc.mqtt311.generated protocol definitions to implement MQTT-SN client and gateway libraries. However, this project is not widely popular and not battle tested in the production environment, so I assume there will be little interest from other people to have it inside the vcpkg (or conan), at least for now.

arobenko commented 3 years ago

Also if you feel like contributing more, and you have some other open standard binary protocol that you are using in the commercial environment you can try to create the relevant cc.X.commsdsl and cc.X.generated projects yourself. Then we can put them inside the CommsChampion Ecosystem github organization. I'll assign you as owner/maintainer of these projects.

mathisloge commented 3 years ago

Okay. Thanks for the feedback.

I will look at how open we can be in that case. But I plan some private projects. There might be some protocols 👍

I think I will let this issue open to just post future vcpkg port updates. Or would you like to handle it differently?

mathisloge commented 3 years ago

Merged the new versions.

Added comms-ublox install with $> vcpkg install comms-ublox

arobenko commented 3 years ago

Good job, thanks

arobenko commented 3 years ago

Hi Mathis, Just want to let you known that I introduced some urgent hotfix (was required at my workplace) which allows to build commsdsl without having comms_champion as a dependency (see v3.5.4 release notes). Using the same opportunity I also introduced a fix you applied as patch in vcpkg.

If you want to create a pull request for this fix I recommend the following updates:

mathisloge commented 3 years ago

Hi Alex, thanks for letting me know. Will update today in the evening.


From: Alex Robenko notifications@github.com Sent: Friday, November 20, 2020 9:21:05 AM To: commschamp/comms_champion comms_champion@noreply.github.com Cc: Mathis Logemann mathisloge@gmail.com; Author author@noreply.github.com Subject: Re: [commschamp/comms_champion] FYI: vcpkg (#13)

Hi Mathis, Just want to let you known that I introduced some urgent hotfix (was required at my workplace) which allows to build commsdslhttps://github.com/commschamp/commsdsl without having comms_championhttps://github.com/commschamp/comms_champion as a dependency (see v3.5.4https://github.com/commschamp/commsdsl/releases/tag/v3.5.4 release notes). Using the same opportunity I also introduced a fix you applied as patch in vcpkg.

If you want to create a pull request for this fix I recommend the following updates:

vcpkg_from_github( ... REF v3.5.4 ... ) vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA OPTIONS -DCOMMSDSL_NO_COMMS_CHAMPION=ON -DCOMMSDSL_NO_TESTS=ON -DCOMMSDSL_NO_WARN_AS_ERR=ON # remove on next version or on next version of boost )

Probably the "-DCOMMSDSL_NO_WARN_AS_ERR=ON" won't be needed as well (because lack of comms_champion forced the commsdsl to get compiled without and warnings enabled), but keeping this option ON won't make much of a difference.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub<commschamp/comms#1>, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ADHNTFGDORU42TWJ4JZ4HMDSQYRHDANCNFSM4TSBHU3Q.

arobenko commented 3 years ago

Hi @mathisloge, Just FYI, new releases of COMMS Library (v3.1.3), commsdsl (v3.6), and cc.ublox.generated with ublox-9 support (v0.20) are available.

mathisloge commented 3 years ago

Hi @arobenko thanks for the ublox-9 update! if i have some time during my holiday, i will start a gui for gps / ublox devices so you can play around with rtk a bit. I will post the link to the github repo here. ubx-9 will be in there too. Could be a nice example

mathisloge commented 3 years ago

updated comms_champion to 3.1.4 updated commsdsl to 3.6.1

mathisloge commented 3 years ago

oh just saw, that new releases just came out. :D Will update to the new ones.

arobenko commented 2 years ago

Hi @mathisloge, Just to let you know that I deprecate the "comms_champion" repository by splitting the contents into two separate ones for COMMS Library and CommsChampion Tools.

mathisloge commented 2 years ago

Hi Alex, that looks good. I will update the ports at vcpkg 👍

arobenko commented 2 years ago

Hi @mathisloge, Just want to let you know that v5.0 of the comms library as well as commsdsl code generators is out. Their main purpose was to support ASN.1 encodings (requested here). The ublox project also was released requiring dslVersion="5".

mathisloge commented 2 years ago

Will update next week 👍

arobenko commented 1 year ago

HI @mathisloge, Just want to let you know that I decided to support the vcpkg by creating a separate repository, which can be used as an overlay to the official vcpkg ports. It gives me a full control over the versions and recipes without a need to constantly submit the pull requests for the upstream updates.

By the way I support not only vcpkg, but also yocto, buildroot, and conan.

mathisloge commented 1 year ago

Hi @arobenko

sorry for the late response. Currently I've not so much time for my open source activities. Sorry for not working on this reliably.