cargo-make | Rust task runner and build tool | Continous Integration library
kandi X-RAY | cargo-make Summary
kandi X-RAY | cargo-make Summary
The cargo-make task runner enables to define and configure sets of tasks and run them as a flow. A task is a command, script, rust code or other sub tasks to execute. Tasks can have dependencies which are also tasks that will be executed before the task itself. With a simple toml based configuration file, you can define a multi platform build script that can run build, test, generate documentation, run bench tests, run security validations and more, executed by running a single command.
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of cargo-make
cargo-make Key Features
cargo-make Examples and Code Snippets
Community Discussions
Trending Discussions on cargo-make
QUESTION
I am attempting to use a version script while building a cdylib
Rust crate, however I am running into issues due to the anonymous version script created by the Rust compiler. I followed this forum post on how to add a version script, but they never mentioned this issue.
I'm using cargo-make
to build my project. In my Makefile.toml
I have this task:
ANSWER
Answered 2021-Aug-28 at 04:27Solution provided by itamarst on the Rust forums.
ExplanationAs shown in the question, ld
does not support multiple version scripts. However, lld
does so we can use that instead. (Can be installed with sudo apt install lld
on ubuntu). To use lld
instead of ld
, pass -Clink-arg=-fuse-ld=lld
to rustc
.
However, this is not enough on its own. The version script Rust generates will take precedence and the version node will not be applied as specified in our version script. To get around this, functions can be given a temporary name and a new symbol can be linked to it via linker args (--defsym
). In the version script the new symbol can be freely used and the original function name can be marked as local to prevent a duplicate symbols from being uploaded.
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install cargo-make
cargo-make - This is a cargo plugin invoked using cargo make ...
makers - A standalone executable which provides same features and cli arguments as cargo-make but is invoked directly and not as a cargo plugin.
Only one type of installation will be invoked per task. The following defines the installation types sorted by priority for which cargo-make uses to decide which installation flow to invoke:. In case multiple installation types are defined (for example both install_crate and install_script) only one installation type will be invoked based on the above priority list.
install_crate - Enables to install crates and rustup components.
install_script - Custom script which can be used to install or run anything that is needed by the task command.
automatic cargo plugin - In case the command is cargo, cargo-make will check which cargo plugin to automatically install (if needed).
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page