Cargo: agregar una forma de establecer un `--target` predeterminado

Creado en 30 ene. 2016  ·  3Comentarios  ·  Fuente: rust-lang/cargo

Por ejemplo, si para su proyecto siempre realiza una compilación cruzada usando cargo build --target=thumbv6m-none-eabi . Esta función le permitiría agregar un par de valores clave a su archivo de configuración de carga:

# .cargo/config
[target]
default = "thumbv6m-none-eabi"

Eso le permitirá simplemente llamar a cargo build para realizar una compilación cruzada de su proyecto por thumbv6m-none-eabi . Esto también se extendería a cargo doc .

Informado originalmente aquí .

Comentario más útil

Esto me parece bastante razonable, aunque podría ir tan lejos como para decir que debería estar en Cargo.toml, ya que es probable que sea por proyecto, si es algo para empezar.

Todos 3 comentarios

Esto me parece bastante razonable, aunque podría ir tan lejos como para decir que debería estar en Cargo.toml, ya que es probable que sea por proyecto, si es algo para empezar.

Una desventaja (?) De convertirlo en una configuración de proyecto es que la configuración siempre se ignorará para las dependencias. Ejemplo: si mi proyecto P depende de la caja D y D ha establecido T como su objetivo predeterminado, esa configuración _siempre_ se ignorará porque D siempre se compilará para el objetivo que elijo para P.

Una ventaja de usar .cargo / config es que si estoy desarrollando varias cajas localmente, entonces puedo tener una configuración como esta:

$ tree .
my-RTOS-project
├── .cargo
│   └── config
├── allocator
│   └── (...)
├── hal
│   └── (...)
├── RusTOS
│   └── (...)
└── scheduler
    └── (...)

Y puedo saltar de un directorio de cajas a otro y ejecutar cargo test . En algún momento puedo editar una sola línea en .cargo / config y comenzar a probar mis cajas para un objetivo diferente.

¡Ajá, sí de verdad! Eso de alguna manera cae dentro del ámbito de https://github.com/rust-lang/cargo/issues/2122 donde eso _no debería_ ser un inconveniente, pero todavía hay trabajo de diseño por hacer allí también.

¿Fue útil esta página
0 / 5 - 0 calificaciones