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

cross-platform and toolchains / external programs / advanced examples #130

Open
roscopecoltran opened this issue Apr 4, 2017 · 0 comments

Comments

@roscopecoltran
Copy link

Hi @toeb ,

Hope you are all well !

I was wondering how CMake++ could help me to manage different types of external project schemes and to cache some cross-platform build with a project version + toolchain tag.

Goal:

  • Support of CMake, QMake, Automake, Maven packages or some package installation in non-standard location packages (prefix) (eg link)
  • Support a registry of C/C++ packages, or stack of packages, with specific CMake args, and trigger some override commands for custom POST_BUILD actions (eg copy all runtime libraries with dependencies libraries to custom install prefix)
  • Support packages or project manifests (eg. with CMake++ with a JSON or YAML like FIPS and create on the fly CMake package configuration files for external project with a namespace (eg. link)
  • Analyze and generate external projects config file with the list of targets and options into a JSON or YAML file. (Would be useful to disable options incompatible with some platforms, (eg for iPhoneOS and Android builds, BLAS libraries are not all compatible)

Questions:

  1. I prefer YAML formats as more human readable and more easy to connect with some other scripts (often Golang based for my part) but I could not make fully work the yaml function from the test function. Is it something that you intend to implement soon ? It would work perfectly with FIPS ^^ ?

  2. Would it be possible to have an example with CMake++ building an OpenCV project and some dependencies like Caffe for mobile without conflicting with the server version Caffe or tensorflow or tiny-dnn with your recent additions on package functions (link ? (more precisely I cannot get if it could manage some kind of build/install cache strategy like hunter per toolchains and prevent duplicate builds of dependencies like Protobuf for example but still be able to set custom args per platfroms ^^)

  3. Would it be possible to see such project build example with a cross-platform approach using toolchains from either Polly or FIPS with CMake++ ?

  4. Is it possible to create executable wrappers from a list of vcs uris and install their pre-requisiste ? (eg. install and wrap CppSharp requires a wrap around premake5, mono, xbuild and nuget in order to wrap CppSharp-Cli ? (eg link) (btw, I am working with an Apple laptop)

Thanks for this awesome project Tobias ! Have an awesome week !

Cheers,
Richard

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

No branches or pull requests

1 participant