A modular toolset for Conan package tools
This project contains files used by Conan Package Tools for all kinds of bincrafters builds.
These scripts are used during build process to allow for rapid testing and prototyping at this time.
To install by pip is just one step
If you want to install by local copy
pip install .
Or if you want to download our pip package
pip install bincrafters_package_tools
We listed two common examples:
- How to build shared library
- How to build header only
All variables supported by Conan package tools, are treated by Bincrafters package tools as well. To solve the upload, some variables are customized by default:
CONAN_UPLOAD: https://api.bintray.com/conan/bincrafters/public-conan
CONAN_REFERENCE: Fields name and version from conanfile.py
CONAN_USERNAME: Get from CI env vars. Otherwise, use bincrafters
CONAN_VERSION: Get from CI env vars.
CONAN_VERSION: Field version from conanfile.py
CONAN_UPLOAD_ONLY_WHEN_STABLE: True for default template. False for Boost builds.
CONAN_STABLE_BRANCH_PATTERN: stable/*
CONAN_ARCHS: Only x86_64 for MacOS. Otherwise, [x86_64, x86]
BINTRAY_REPOSITORY: Bintray repository name. This variable replaces "public-conan" for CONAN_UPLOAD.
To install extra packages required to test
pip install .[test]
To run all unit test + code coverage, just execute:
pip install -r bincrafters/requirements_test.txt
cd tests
pytest -v --cov=bincrafters
To develop or run Bincrafters package tools, Conan package tools will be required However, you could solve by pip
pip install -r bincrafters/requirements.txt
There are two ways to upload this project.
After to create a new tag, the package will be uploaded automatically to Pypi.
Both username and password (encrypted) are in travis file.
Only one job (python 2.7) will upload, the second one will be skipped.
To upload this package on pypi (legacy mode):
pip install twine
python setup.py sdist
twine upload dist/*