# [emerge](RESOLU)changer MAKEOPTS/FEATURES/... dynamiquement

## xaviermiller

Hello,

Avec mon netbook, j'utilise distcc quand je suis à la maison, et dans ce cas je mets un gros MAKEOPTS.

Mais ailleurs, je désactive distcc (FEATURES=-distcc) et diminue MAKEOPTS.

Est-ce qu'il y a moyen de mettre des "if" dans le make.conf, ou ailleurs; pour que ce soit changé dynamiquement ?

(ex: si ping vers le serveur distcc = OK, alors activer distcc et gonfler MAKEOPTS) 

Je vois une possibilité : écrire un wrapper qui passe les valeurs FEATURES et MAKEOPTS comme variables de shell à emerge, mais peut-on le faire via make.conf ?

EDIT: RESOLU, via /etc/portage/bashrc:

```
#!/bin/bash

if ! ping -c 1 -q -w 1 NOM_DE_MON_SERVEUR_DISTCC > /dev/null 2>&1

then

    #désactivation de distcc et diminution de MAKEOPTS

    export MAKEOPTS="-j3"

    export FEATURES="candy sandbox parallel-fetch -distcc buildpkg"

fi
```

----------

## chris972

Salut.

Je n'ai pas la solution, mais le même problème.

Si je lance une compil sans avoir lancé les 4 autres machines de la même arch, avec un -j9, le pauvre portable souffle comme un boeuf  :Very Happy: 

Je pense qu'il serait vachement bien que les paramètres s'adaptent en fonction des réponses de distcc.

En conclusion, si tu chopes une réponse viable quelque part, elle m'intéresse  :Wink: 

----------

## boozo

'alute

je n'ai pas non plus connaissance d'une telle option en natif - qui serait pourtant utile - mais je veux bien me tromper avec vous 

Enfin, si jamais vous êtes passé à coté et pour ne pas réinventer la roue, il y a toujours ce vieux script qui traine sur le forum à cet usage  :Wink: 

----------

## chris972

Bien vu pour le script. On pouvait effectivement se douter ne pas être les premiers à y penser  :Wink: 

Étonnant que depuis le temps les gens de gentoo n'aient jamais envisagé d'intégrer ça au système.

Je verrai sans doute un de ces jours à tester la chose, si aucune réponse plus appropriée n'est révélée ici (on peut tjrs rêver !).

----------

## netfab

Vous pouvez toujours tenter de relancer ce bug : Bug 229861 - Support conditional statements in make.conf 

Sinon, une autre solution potentielle serait de modifier la configuration de portage automatiquement au moment de la connexion réseau.

----------

## chris972

 *netfab wrote:*   

> Vous pouvez toujours tenter de relancer ce bug : Bug 229861 - Support conditional statements in make.conf 

 

Exact.

 *Quote:*   

> Sinon, une autre solution potentielle serait de modifier la configuration de portage automatiquement au moment de la connexion réseau.

 

Oui mais non. Enfin, pour moi non, parce que ce n'est pas parce que je suis connecté au réseau que pour autant les machines sur lesquelles partager les compilations sont allumées.

----------

## xaviermiller

Oh, le beau vieux message !

Merci pour l'info, j'ai ajouté un commentaire dans le bug et le message du forum pour les remonter.

----------

## xaviermiller

C'est résolu : il suffit de coder cela dans /etc/portage/bashrc

 :Cool: 

----------

