Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Packages: Add Conan support #57

Closed
wants to merge 5 commits into from

Conversation

Croydon
Copy link
Contributor

@Croydon Croydon commented Jan 29, 2019

Major work done by @helmesjo, thanks!

Also please review @helmesjo that I didn't make something stupid when adopting your version of the recipe 馃槃

This is adding basic support for Conan. After merging this people can install and use Corrade by checking out this git repository and installing it via

conan create . magnum/stable

To make sure that the build was successful, the test_package should be executed in the same step via

conan create . magnum/stable -tf package/conan/test_package

(-tf stands for test folder)


This is not yet adding any CI/CD logic, which is mass building packages for all kinds of configurations and uploading these to a Conan repository. This should follow at a later step. In the meantime the Conan create command is always building Corrade from source automatically, as Conan is always doing when there aren't pre-build packages available for the own configuration.


Please don't forget to update the version number in the conanfile.py file before tagging a new release. In the future we can eliminate the hard coded version in the conanfile.py, but for now this makes things easier.

Cross-referencing: mosra/magnum#304

Major work done by @helmesjo, thanks!

Co-Authored-By: helmesjo <helmesjo@live.com>
@codecov-io
Copy link

codecov-io commented Jan 29, 2019

Codecov Report

Merging #57 into master will not change coverage.
The diff coverage is n/a.

Impacted file tree graph

@@           Coverage Diff           @@
##           master      #57   +/-   ##
=======================================
  Coverage   98.04%   98.04%           
=======================================
  Files          78       78           
  Lines        5020     5020           
=======================================
  Hits         4922     4922           
  Misses         98       98

Continue to review full report at Codecov.

Legend - Click here to learn more
螖 = absolute <relative> (impact), 酶 = not affected, ? = missing data
Powered by Codecov. Last update 8ff3fd0...4e5485a. Read the comment docs.

@helmesjo
Copy link
Contributor

Builds fine and installed files look correct! 馃帀 Also diffed against my conanfile.py and couldn't spot anything wrong/missing.

package/conan/CMakeLists.txt Outdated Show resolved Hide resolved
package/conan/test_package/test_package.cpp Outdated Show resolved Hide resolved
.gitignore Outdated Show resolved Hide resolved
conanfile.py Outdated Show resolved Hide resolved
@mosra
Copy link
Owner

mosra commented Jan 30, 2019

Thanks a lot! So if I understand correctly, this should get in before the 2019.01 version is tagged, right? Will you be submitting a similar one for Magnum (should I wait?) or not?

Please don't forget to update the version number in the conanfile.py file before tagging a new release. In the future we can eliminate the hard coded version in the conanfile.py, but for now this makes things easier.

Oh! Good to know, adding it to my release checklist.

@mosra mosra added this to the 2019.01 milestone Jan 30, 2019
@mosra mosra added this to TODO in Project management via automation Jan 30, 2019
@Croydon
Copy link
Contributor Author

Croydon commented Jan 30, 2019

Will you be submitting a similar one for Magnum (should I wait?) or not?

I will have a look if I'm able to get in done in time 馃槃 Should be doable I hope

@Croydon
Copy link
Contributor Author

Croydon commented Jan 30, 2019

So if I understand correctly, this should get in before the 2019.01 version is tagged, right?

Yes, please

@mosra
Copy link
Owner

mosra commented Jan 30, 2019

Wonderful, thank you! One last thing: what should I put into the building docs re Conan? Something like above?

people can install and use Corrade by checking out this git repository and installing it via

conan create . magnum/stable

(it should have said corrade/stable, right?)

@Croydon
Copy link
Contributor Author

Croydon commented Jan 30, 2019

Wonderful, thank you! One last thing: what should I put into the building docs re Conan? Something like above?

I would rather recommend to put in the second command

You can install Corrade via Conan by checking out the git repository and executing:
> conan create . magnum/stable -tf package/conan/test_package

It is good to know when the build step itself is successful, but the output is corrupt. The tests will complain if this should be the case :)

(it should have said corrade/stable, right?)

No, it is conan create . <username>/<stable> while the Conan recipe name and version is getting set within the conanfile.py.

This create command results in the following full recipe path: corrade/2018.10@magnum/stable which would be in harmony with a future magnum Conan repository.

Croydon referenced this pull request in bincrafters/templates Jan 30, 2019
- As Daniel Pfeifer and Mathieu Ropert said, language standard
  and GLOB should be avoided directly in CMakeLists.txt

Signed-off-by: Uilian Ries <uilianries@gmail.com>
@mosra
Copy link
Owner

mosra commented Jan 31, 2019

Squashed and merged in c32fbbb, thanks a lot! I removed the return 0; from the test file and also the now-obsolete GCC47_COMPATIBILITY option.

Regarding the corresponding Magnum package, I probably won't be tagging v2019.01 earlier than Sunday evening, so there should still be plenty of time for you to sort it out :)

@mosra mosra closed this Jan 31, 2019
Project management automation moved this from TODO to Done Jan 31, 2019
This was referenced Feb 4, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Development

Successfully merging this pull request may close these issues.

None yet

4 participants