Makefiles so oblika konfiguracijske datoteke, ki jo uporablja pripomoček make za prepoznavanje lokacije izvornih datotek, ki bodo uporabljene v aplikaciji. Makefile pomaga ne le poiskati izvorne datoteke, ampak tudi pomaga definirati, kako bodo prevedene in povezane med seboj, da se omogoči zagon in delovanje izvedljivega programa. Ustvarjanje makefile je bistven proces pri skoraj vseh vrstah računalniškega programiranja.
Ker makefile pomaga pri določanju smeri in delovanja različnih programov, je bistveni del skripta, ki je del vseh protokolov pripomočkov make. Pripomočki Make se lahko od ene do druge programske aplikacije nekoliko razlikujejo. Vendar pa je pomembno omeniti, da bodo skoraj vse različice pripomočkov make nosile enake osnovne komponente, ki jih najdemo v tako dobro v zvezi s pripomočki, kot je Unix.
Na splošno bo makefile sestavljen iz več vrstic besedila, ki bodo definirale datoteko ali niz datotek. Vsaka od definicij datotek bo imela opraviti z predvideno funkcijo te datoteke v okviru delovanja programa. Na primer, izhodne datoteke bodo označene v vrsticah besedila na način, da je odvisnost teh datotek od izvornih datotek tako očitna kot logična. Vsaka odvisnost, navedena v vrsticah besedila, bo vključevala podnabore besedila, zamaknjenega z zavihki, ki pomagajo definirati proces od izhoda do vnosa in obratno.
Uporaba pripomočka make in ustvarjanje makefile omogoča relativno načrtovanje korakov v velikih in pogosto podrobnih aplikacijah. Vendar je treba opozoriti, da je makefile mogoče uporabiti s skoraj vsemi vrstami prevedenih jezikovnih aplikacij. Zaradi narave konstrukcije makefile je programerju relativno enostavno vnesti dodatne vrstice besedila na strateških točkah, ko je zaželena izboljšava programiranja.