Makefile (Borland)
Makefile (Borland) – język skryptowy, w którym tworzone są zbiory źródłowe, dla programu make pakietów programowania firmy Borland, w szczególności serii pakietów oznaczonej nazwą Turbo/Borland, przeznaczony do definiowania reguł kompilacji i łączenia powiązanych zbiorów programowych – procedur budowy aplikacji z wielu zbiorów.
Rodzaje jednostek języka
[edytuj | edytuj kod]Kod źródłowy skryptu makefile zbudowany jest z określonych jednostek tworzących skrypt. Wyróżnia się następujące jednostki:
- komentarze
- reguły
- jawne
- niejawne
- makrodefinicje
- dyrektywy.
Składnia
[edytuj | edytuj kod]Komentarze
[edytuj | edytuj kod]W składni makefile komentarz jest zapisany jako komentarz liniowy, który rozpoczyna się w dowolnym miejscu linii zbioru źródłowego, od znaku #, a kończy znakiem końca wiersza. Składnia wiersza kodu z komentarzem ma postać:
[jednostka] # komentarz
Reguły
[edytuj | edytuj kod]Reguły zawierają polecenia tworzenia zbioru wynikowego na podstawie określonych zbiorów źródłowych.
Reguły jawne
[edytuj | edytuj kod]Reguły jawne mają postać:
zbiór_wynikowy: {ścieżki} zbióry_źródowe polecenie_1 … polecenie_n
- {ścieżki}
- zawierają rozdzielone średnikami ścieżki dostępu, które będą przeszukiwane w poszukiwaniu zbiorów źródłowych
- polecenie
- ma postać: przedrostki polecenie_DOS, przy czym przedrostki to frazy, które modyfikują działanie poleceń DOS.
Reguły niejawne
[edytuj | edytuj kod]Reguły niejawne służą definiowaniu wielu reguł o tej samej budowie za pomocą pojedynczej definicji. Składnia:
{katalog_źródłowy}.rozszerzenie_1.{katalog_docelowy}.rozszerzenie_2: polecenie_1 … polecenie_n
Makrodefinicje
[edytuj | edytuj kod]Makrodefinicje umożliwiają definiowanie powtarzających się poleceń, zbiorów i opcji, które identyfikowane są przez pewien użyty w definicji identyfikator.
- makrodefinicja
identyfikator=tekst
- odwołanie
$(identyfikator)
Oprócz makrodefinicji definiowanych przez użytkownika program dostarcza wbudowane makrodefinicje, także o specjalnym sposobie odwołania, np. §d, §*
i inne, które służą do odwołań zastępujących określone nazwy zbiorów i ścieżek, w tym bieżących zależnych od aktualnych ustawień systemu komputerowego i instalacji systemu programowania. W odwołaniach do makrodefinicji predefiniowanych można stosować również modyfikatory identyfikowane literami D, F, B i R
.
Oprócz predefiniowanych makrodefinicji dostępne są również predefiniowane nazwy:
- _MSDOS_
- 1, gdy make uruchomiony jest z poziomu DOS
- _MAKE_
- zakodowana wersja programu
- MAKE
- nazwa zbioru programu make
- MAKEFLAGS
- opcje uruchomienia programu make
- MAKEDIR
- nazwa katalogu, z którego uruchomiono program make.
Dyrektywy
[edytuj | edytuj kod]Dyrektywy makefile pełnią funkcje podobne (analogiczne) do preprocesora lub dyrektyw kompilatora. Są to między innymi dyrektywy warunkowe, włączające, przełącznikowe, komunikatów. Dyrektywy zapisywane są po znaku !, np.
!include "nazwa zbioru" !if wyrażenie … !else … !endif !undefine nazwa
Dyrektywy przełącznikowe i parametryczne mają postać:
.dyrektywa
np.
- .ignore | .noignore
- dyrektywa przełącznikowa
- .path
- rozszerzenie=ścieżka : dyrektywa parametryczna.
W dyrektywach warunkowych dostępne są operatory takie jak operatory porównań, arytmetyczne, logiczne, bitowe, warunkowy.
Zbiór źródłowy
[edytuj | edytuj kod]Zbiór źródłowy ze skryptem jest plikiem tekstowym zapisanym w zbiorze o nazwie:
- makefile, lub
- makefile.mak.
Zbiór ten powinien znajdować się w bieżącym katalogu programu make.
Bibliografia
[edytuj | edytuj kod]- Andrzej Marciniak, Borland Pascal 7.0, Wyd. Nakom, Poznań 1994 r., seria: Biblioteka Użytkownika Mikrokomputerów, ISBN 83-85060-53-7, ISSN 0867-6011