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’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Conan Package Support #2

Closed
uilianries opened this issue Oct 18, 2018 · 8 comments
Closed

Conan Package Support #2

uilianries opened this issue Oct 18, 2018 · 8 comments

Comments

@uilianries
Copy link
Contributor

Hello,

Do you know about Conan?

Conan is modern dependency and package manager for C/C++ and would be great if your library would be available via package manager for other developers.

All Conan packages are available on Conan Center, where is possible search, install and upload any official Conan package.

As your project uses zmq, we already have such dependency solved by Conan. So you are able to run BehaviorTree with zmq pre-built.

We could support you writing a recipe and publishing your packages on Bintray.

If you have any questions, just ask :-)

Regards!

@facontidavide
Copy link
Collaborator

facontidavide commented Oct 19, 2018

I looked in the conan center and I was not able to find "ZMQ". Furthermore, the command

conan search "*z*" -r=conan-center

Doesn't return anything relevant.

@uilianries
Copy link
Contributor Author

Sorry, ZMQ is available by Bincrafters team:

https://bintray.com/bincrafters/public-conan/zmq%3Abincrafters

Bincrafters is a team for OSS developers to collaborate on binary packaging of libraries. We have helped Conan and the community.

ZMQ is not official on Conan center yet, but is close to be promoted.

@facontidavide
Copy link
Collaborator

summarizing, what should I do to use ZMQ from Bincrafters?
I am 100% new to Conan.

Eventually, my build MUST support:

  • Compile without CONAN
  • Compile with Catkin (ROS)
  • Vanilla compiling (if neither Catkin nor Conan is detected).

If you want to contribute with a PR, you are welcome

@uilianries
Copy link
Contributor Author

Hi! I've started the recipe for Behavior Tree and I have two questions:

  • Who is the author of this project?
    I found 3 main members in collaborators, but I don't have sure if this project is there is only one father.

  • What is the correct name for this project?
    BehaviorTree.CPP is the name of this project, but in CMakeLists.txt the name is behavior_tree_core

Regards!

@facontidavide
Copy link
Collaborator

The author is mainly me, or at least the main maintainer. Davide Faconti.
The "human readable" name of the project is BehaviorTree.CPP, but I don't know if it is ok for a package manager.

In particular, ROS accepts only projects in snake case.

I might rename behavior_tree_core as behaviortree_cpp, to be more consistent.

@uilianries
Copy link
Contributor Author

Thanks for you quick answer!

@uilianries
Copy link
Contributor Author

uilianries commented Nov 14, 2018

I have few questions again:

  • Is there any idea supporting shared library?
    I found add_library(behavior_tree_core STATIC ${BT_Source} ). The library is forced to be static ever.

  • Could fPIC be more relaxed?
    I found target_compile_options(behavior_tree_core PRIVATE "-fPIC"). However cmake provides POSITION_INDEPENDENT_CODE which is possible to be used as fPIC but as optional.

  • Is there any idea supporting install target?
    I didn't find intall section in your cmake file. It could help all customers.

  • Do you want export BehaviorTree using cmake config file?
    CMake provides helpers to exports all paths and libraries names in a single file.

  • Is BehaviorTree supported on Windows and Macos?
    I found set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -pthread -Werror=return-type -Wall -Wpedantic -Wattributes") that is related to Linux (clang, gcc)

As I have some experience with CMake, I would be happy helping this project updating your cmake as well. I could create a separated PR introducing all changes.

EDIT:

Moved these question to #10

uilianries added a commit to uilianries/BehaviorTree.CPP that referenced this issue Nov 21, 2018
- Add conan recipe for BehaviorTree.CPP
- Add build script for Appveyor
- Add build script for Travis CI
- Add dummy test package

Signed-off-by: Uilian Ries <uilianries@gmail.com>
uilianries added a commit to uilianries/BehaviorTree.CPP that referenced this issue Nov 24, 2018
- Add conan recipe for BehaviorTree.CPP
- Add build script for Appveyor
- Add build script for Travis CI
- Add dummy test package

Signed-off-by: Uilian Ries <uilianries@gmail.com>
uilianries added a commit to uilianries/BehaviorTree.CPP that referenced this issue Nov 24, 2018
- Add conan recipe for BehaviorTree.CPP

Signed-off-by: Uilian Ries <uilianries@gmail.com>
uilianries added a commit to uilianries/BehaviorTree.CPP that referenced this issue Nov 24, 2018
- Add conan recipe for BehaviorTree.CPP

Signed-off-by: Uilian Ries <uilianries@gmail.com>
uilianries added a commit to uilianries/BehaviorTree.CPP that referenced this issue Nov 25, 2018
- Add build script for Appveyor
- Add build script for Travis CI
- Add dummy test package for Conan

Signed-off-by: Uilian Ries <uilianries@gmail.com>
uilianries added a commit to uilianries/BehaviorTree.CPP that referenced this issue Dec 4, 2018
- cppzmq is available on Conan Center

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

Done

uilianries added a commit to uilianries/BehaviorTree.CPP that referenced this issue Dec 12, 2018
- Add Travis support for Conan package
- Add Appveyor file to build on Windows

Signed-off-by: Uilian Ries <uilianries@gmail.com>
uilianries added a commit to uilianries/BehaviorTree.CPP that referenced this issue Dec 12, 2018
Signed-off-by: Uilian Ries <uilianries@gmail.com>
uilianries added a commit to uilianries/BehaviorTree.CPP that referenced this issue Dec 12, 2018
Signed-off-by: Uilian Ries <uilianries@gmail.com>
uilianries added a commit to uilianries/BehaviorTree.CPP that referenced this issue Dec 12, 2018
Signed-off-by: Uilian Ries <uilianries@gmail.com>
uilianries added a commit to uilianries/BehaviorTree.CPP that referenced this issue Dec 13, 2018
Signed-off-by: Uilian Ries <uilianries@gmail.com>
uilianries added a commit to uilianries/BehaviorTree.CPP that referenced this issue Dec 13, 2018
Signed-off-by: Uilian Ries <uilianries@gmail.com>
uilianries added a commit to uilianries/BehaviorTree.CPP that referenced this issue Dec 13, 2018
Signed-off-by: Uilian Ries <uilianries@gmail.com>
uilianries added a commit to uilianries/BehaviorTree.CPP that referenced this issue Dec 13, 2018
Signed-off-by: Uilian Ries <uilianries@gmail.com>
uilianries added a commit to uilianries/BehaviorTree.CPP that referenced this issue Dec 13, 2018
Signed-off-by: Uilian Ries <uilianries@gmail.com>
uilianries added a commit to uilianries/BehaviorTree.CPP that referenced this issue Dec 13, 2018
Signed-off-by: Uilian Ries <uilianries@gmail.com>
uilianries added a commit to uilianries/BehaviorTree.CPP that referenced this issue Dec 13, 2018
Signed-off-by: Uilian Ries <uilianries@gmail.com>
uilianries added a commit to uilianries/BehaviorTree.CPP that referenced this issue Dec 13, 2018
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants