Využívat více Makefile, nebo ne?

cs v kategorii code • 2 min. čtení
Mind the age! Most likely, its content is outdated. Especially if it’s technical.

Už dlouho mám v hlavě otázku „proč se tak málo využívá Makefile?“ Nebo ho snad využívám k něčemu, na co se nehodí? Osobně si u každého projektu Makefile vytvořím a takový základ (jak u čeho) jsou tyto příkazy:

make install-dev
make install-git-hooks
make compile
make compile-css
make compile-js
make watch
make test
make run
make install
make deploy

A jsem s tím velice spokojen. Chápu, že je Makefile definován jako nástroj pro překlad zdrojových souborů do binárních. Proč ale zůstávat jen u toho? Dá se na Makefile nahlížet také jako na nástroj volající bash scripty.

Mohlo by se namítnout, proč využívat Makefile na volání scriptů? Důvodů by se našlo několik. Například bych scripty musel napsat, zde řeším už jen co se má dělat. Napovídání cílů tabulátorem. Samozřejmě i závislosti – jednoduše zařídím, že před testováním se musí nejprve provést kompilace atp.

Každopádně jsem zkusil zapřemýšlet, zda opravdu potřebuju jakýkoliv script. Zda nestačí utility dané technologie. Jelikož jsem programátor, tvorem líným, ukázalo se, že potřebuji. Jsem líný se učit nazpaměť příkazy, kór když se musí volat pokaždé s jinými parametry dle projektu.

cp git-hooks/* .git/hooks/
apt-get install [what is in readme]
pip install -Ur requirements.txt
npm install
recess --compress
coffee --watch -cb
nosetests tests
mocha tests --watch
python setup.py install
python setup.py sdist upload

Takže jsem došel k závěru, že je opravdu skvělé mít Makefile a neřešit, co musím udělat, abych si spustil testy. A když nemám potřebné balíky, nemuset dolovat, které musím nainstalovat, ale jednoduše zavolat make install-dev.

Zdá se, že s tímto názorem nejsem rozhodně sám. Není nás ale mnoho. Co používáte vy a proč?



Sdílejte:   Facebook   Twitter   Reddit   Tumblr   Pinterest




Může se vám také líbit

en What Makes Good Program?, November 20, 2018
en Old Code, October 31, 2018
en Fast JSON Schema for Python, October 1, 2018
en Open Source Responsibilities, September 6, 2018
en Deployment of Python Apps, August 15, 2018


Populární v kategorii code

en Makefile with Python, November 6, 2017
en Deployment of Python Apps, August 15, 2018
cs Jasně, umím Git…, August 6, 2014
cs Checklist na zabezpečení webových aplikací, March 1, 2016
cs Pokročilé regulární výrazy, August 17, 2014