This is an old revision of the document!
Pe parcursul secțiunilor de până acum am văzut cum se poate îmbunătăți procesul de compilare al unui program. Am trecut de la a compila codul “de mână”, la fișiere Makefile, la fișiere Makefile cu dependențe. Mai există totuși o formă prin care să putem să îmbunătățim procesul.
CC = gcc CFLAGS = -Wall -g all: hello hello: hello.o $(CC) hello.o -o hello hello.o: hello.c $(CC) $(CFLAGS) -c hello.c clean: rm *.o hello
În exemplul de mai sus au fost definite variabilele CC și CFLAGS. Variabila CC reprezintă compilatorul folosit,
iar variabila CFLAGS reprezintă opțiunile (flag-urile) de compilare utilizate; În cazul de față sunt afișarea avertismentelor
și compilarea cu suport de depanare. Referirea unei variabile se realizează prin intermediul construcției $(VAR_NAME).
Astfel, $(CC) se înlocuiește cu gcc, iar $(CFLAGS) se înlocuiește cu -Wall -g.
Exemple variabilele predefite:
Până să treceți mai departe mutați-vă la calea ~/uso-lab/04-appdev/support/nice-to-know.
Fișierul Makefile pe care l-ați creat mai devreme este unul funcțional, dar vrem să îl mai îmbunătățim.
Makefile astfel încât să avem de schimbat o singură linie în cazul în care dorim să schimbăm numele executabilului.
La calea ~/uso-lab/04-appdev/support/get-a-life se află un Makefile alături de 3 fișiere sursă și 2 fișiere header.
În acest moment, în directorul my-awesome-project avem repository-ul nostru de git pentru care avem 2 branch-uri active. Dacă verificăm,
obesrvăm că fișierul tom.txt este diferit pe fiecare branch. Vrem ca branch-ul my-even-awesomer-branch să fie “la zi” cu branch-ul
master. Pentru asta trebuie să efectuăm operațiunea de merge.
merge, rezolvați-le dacă apar și după discutați cu asistentul.