J'ai un projet C avec Makefile personnalisé. Sa première ligne est le chemin d'accès au répertoire du projet. Donc, chaque machine, qui fonctionne avec ce projet, doit changer ce chemin vers son répertoire de travail, et cela conduit naturellement à un nouveau commit indésirable, surtout si vous poussez des données. De plus, il existe plusieurs SDK externes qui nécessitent également des chemins.

Quelles sont vos solutions?

0
Long Smith 17 janv. 2017 à 09:26

2 réponses

Meilleure réponse

Incluez conditionnellement un fichier makefile non suivi qui définit les chemins locaux (par exemple -include config.mak).

3
jthill 17 janv. 2017 à 07:18

Tout d'abord, vous pouvez remplacer la variable qui est assignée via un simple = via la ligne de commande:

$ cat Makefile
AAA = 1
all:
    echo $(AAA)
$ make
1
$ make AAA=2
2

Deuxièmement, vous pouvez utiliser ?= et dans ce cas, l'environnement Linux remplacera également la variable de Makefile:

$ cat Makefile
AAA ?= 1
all:
    echo $(AAA)
$ export AAA=3
$ make
3

Ensuite, vous pouvez ajouter une variable à votre .bashrc et l'oublier.

0
yugr 17 janv. 2017 à 11:32