Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

BEGIN-MAKE Einleiten der make-Verarbeitung

&pagelevel(4)&pagelevel

Die BEGIN-MAKE-Anweisung leitet die make-Subanweisungen ein. Die make-Subanweisungen werden mit END-MAKE beendet.

Mit BEGIN-MAKE kann folgendes spezifiziert werden:

  • Ziel, das mit dem make-Lauf erzeugt werden soll

  • Art der make-Verarbeitung (notwendige) oder alle Aktionen ausführen

  • Folgeverarbeitung

Wird eine Prozedur synchron ausgeführt, beendet dies LMS.

 

BEGIN-MAKE

TARGET = *FIRST-TARGET / <filename 1..54 without-vers> / *LIBRARY-ELEMENT(...)


*LIBRARY-ELEMENT(...)



|

LIBRARY = <filename 1..54 without-vers> / *LINK(...)



|


*LINK(...)



|



|

LINK-NAME = <structured-name 1..8>



|

,ELEMENT = <composed-name 1..64 with-under>(...)



|


<composed-name 1..64 with-under>(...)



|



|

VERSION = *HIGHEST-EXISTING / *UPPER-LIMIT / <composed-name 1..24 with-under>



|



|

,BASE = *STD / <composed-name 1..24 with-under with-wild>



|

,TYPE = <alphanum-name 1..8>

,SELECT = *MODIFIED / *ALL

,SUCCESS-PROCESSING = *INCLUDE-PROCEDURE / *CALL-PROCEDURE / *ENTER-PROCEDURE /








*CREATE-PROCEDURE / *TOUCH

,PROCEDURE = SYSPRC.LMS.MAKE / <filename 1..54 without-vers> / *LIBRARY-ELEMENT(...)


*LIBRARY-ELEMENT(...)



|

LIBRARY = *BY-TARGET / <filename 1..54 without-vers> / *LINK(...)



|


*LINK(...)



|



|

LINK-NAME = <structured-name 1..8>



|

,ELEMENT = <composed-name 1..64 with-under>(...)



|


<composed-name 1..64 with-under>(...)



|



|

VERSION = *HIGHEST-EXISTING / *INCREMENT / *UPPER-LIMIT /



|



|


<composed-name 1..24 with-under>



|

,TYPE = J / <alphanum-name 1..8>

,PROCEDURE-PARAMETERS = *NO / <text 1..1800 with-low>


TARGET = *FIRST-TARGET / <filename 1..54 without-vers> / *LIBRARY-ELEMENT(...)
Zu produzierendes Ziel.

TARGET = *FIRST-TARGET
Das erste Ziel (Bibliothekselement oder Datei) unter den Abhängigkeitsdefinitionen ist das Ziel des gesamten make-Laufs.

TARGET = <filename 1..54 without-vers>
Das Ziel ist eine Datei. Der Initialwert für die Default-Bibliothek in MODIFY-MAKE-DEFAULTS ist *NONE.

TARGET = *LIBRARY-ELEMENT(...)
Das Ziel befindet sich in einem Bibliothekselement. Eine angegebene Zielbibliothek ist der Initialwert für die Default-Bibliothek in MODIFY-MAKE-DEFAULTS.

LIBRARY = <filename 1..54 without-vers> / *LINK(...)
Bibliothek des Zielelements.

LIBRARY = <filename 1..54 without-vers>
Bibliothek des Zielelements.

LIBRARY = *LINK(...)
Bibliothek des Zielelements.

LINK-NAME = <structured-name 1..8>
Linkname der Bibliothek des Zielelements.

ELEMENT = <composed-name1..64 with-under>(...)
Name des Zielelements.

VERSION = *HIGHEST-EXISTING / *UPPER-LIMIT / <composed-name 1..24 with-under>

Version des Zielelements.

VERSION = *HIGHEST-EXISTING
Es wird die höchste existierende Version als Ziel herangezogen.

VERSION = *UPPER-LIMIT
Es wird die höchstmögliche Version X’FF’ als Ziel herangezogen.

VERSION = <composed-name 1..24 with-under>
Der hier angegebene Text wird als Versionsbezeichnung interpretiert.

BASE = *STD / <composed-name 1..24 with-under with-wild>
Legt die Basis des Zielelements fest.

TYPE = <alphanum-name 1..8>
Typ, den das Zielelement besitzt.

SELECT = *MODIFIED / *ALL
Komponenten, die zur Erzeugung von Zielen herangezogen werden.

SELECT = *MODIFIED
Die geänderten Komponenten (=Komponenten neueren Datums) sollen Einfluss haben.

SELECT = *ALL
Alle Komponenten sollen verwendet werden. Es wird simuliert, dass alle Komponenten, die zum Ziel führen, nicht aktuell sind.

SUCCESS-PROCESSING = *INCLUDE-PROCEDURE / *CALL-PROCEDURE / *ENTER-PROCEDURE / *CREATE-PROCEDURE / *TOUCH
Art der abschließenden Bearbeitung. Am Ende des make-Laufs (END-MAKE-Anweisung) wird die entsprechende Verarbeitung ausgeführt. Wenn das Ziel bei TARGET aktuell ist, wird die abschließende Bearbeitung nicht durchgeführt.

SUCCESS-PROCESSING = *INCLUDE-PROCEDURE
Die unter PROCEDURE angegebene Prozedur wird generiert und synchron mit den aktuellen Variablen ausgeführt.

SUCCESS-PROCESSING = *CALL-PROCEDURE
Die unter PROCEDURE angegebene Prozedur wird generiert und synchron mit neuem Variablen-Environment ausgeführt.

SUCCESS-PROCESSING = *ENTER-PROCEDURE
Die unter PROCEDURE angegebene Prozedur wird generiert und asynchron mit neuem Variablen-Environment ausgeführt.

SUCCESS-PROCESSING = *CREATE-PROCEDURE

Die Prozedur wird nur generiert.

SUCCESS-PROCESSING = *TOUCH
Die Komponenten des Programmsystems, die erzeugt werden müssen, werden berührt, d.h. sie erhalten einen neuen Modifikationszeitpunkt als Zeitstempel. Anschließend ist das gesamte Programmsystem bis TARGET aktuell. Es wird keine Prozedur erzeugt. Eine Datei, die mit *TOUCH behandelt werden soll, darf weder leer noch gegen UPAM-Zugriffe geschützt sein.

PROCEDURE = SYSPRC.LMS.MAKE / <filename 1..54 without-vers> / *LIBRARY-ELEMENT(...)
Prozedur, die durch make erzeugt und eventuell am Ende gestartet wird.

PROCEDURE = *LIBRARY-ELEMENT(...)
Die Prozedurdatei, die erzeugt wird, ist ein Element in einer Bibliothek.

LIBRARY = *BY-TARGET / <filename 1..54 without-vers> / *LINK(...)
Bibliothek, in der die Prozedur gespeichert wird.

LIBRARY = *BY-TARGET
Bibliothek ist die von TARGET.

LIBRARY = <filename 1..54 without-vers>
Bibliothek des Prozedurelements.

LIBRARY = *LINK(...)
Bibliothek des Prozedurelements.

LINK-NAME = <structured-name 1..8>
Linkname der Bibliothek des Prozedurelements.

ELEMENT = <composed-name 1..64 with-under>(...)
Name des Prozedurelements.

VERSION = *HIGHEST-EXISTING / *INCREMENT / *UPPER-LIMIT /
<composed-name 1..24 with-under>
Version des Prozedurelements.

VERSION = *HIGHEST-EXISTING
Abhängig von der unter dem Typ geltenden Konvention wird unter existierenden Elementen gleichen Typs und Namens die höchste zu BASE passende Version überschrieben, ansonsten wird eine Defaultversion erzeugt.

VERSION = *INCREMENT
Abhängig von der unter dem Typ geltenden Konvention wird unter existierenden Elementen gleichen Typs und Namens eine neue, höhere Version ansonsten eine Defaultversion erzeugt.

VERSION = *UPPER-LIMIT

Es wird die höchstmögliche Version X’FF’ erzeugt.

VERSION = <composed-name 1..24 with-under>
Der hier angegebene Text wird als Versionsbezeichnung interpretiert.

TYPE = J / <alphanum-name 1..8>
Typ, den das Prozedurelement besitzt.

PROCEDURE-PARAMETERS = *NO / <text 1..1800 with-low>
Parameter, mit denen die Prozedur beim Aufruf versorgt wird. Sie entsprechen dem PROCEDURE-PARAMETERS-Operanden von CALL-PROCEDURE, ENTER-PROCEDURE und INCLUDE-PROCEDURE und werden unverändert weitergegeben.

PROCEDURE-PARAMETERS = *NO
Keine Prozedurparameter.

PROCEDURE-PARAMETERS = <text 1..1800 with-low>
Prozedurparameter, die unverändert weitergegeben werden.

Anweisungs-Returncode

(SC2)      SC1

Maincode

Bedeutung

0
1

CMD0001
CMD0230

Ohne Fehler
Syntaxfehler

Hinweis

Nur wenn SDF-P im System vorhanden ist, kann ein erzeugtes Prozedurelement mit einer Version ungleich der höchsten ausgeführt werden (und auch nur mit CALL-PROCEDURE und INCLUDE-PROCEDURE).

Beispiel

Im Folgenden Teilstück einer Prozedur soll das Ziel aus dem Parameter TARGET mit Hilfe der Definitionen in der Datei MAKEFILE erstellt werden, wenn es nicht aktuell ist. In der Datei MAKEFILE stehen make-Subanweisungen. Zum Abschluss wird die standardmäßig erzeugte Prozedur ausgeführt und LMS beendet.

   ... 
/START-LMS 
/BEGIN-BLOCK DATA-INSERTION=YES 
//BEGIN-MAKE TARGET=&(TARGET),       "MAKE-AUFRUF" 
//MODIFY-MAKE-DEFAULTS LIBRARY=MYLIB "DEFAULT-EINSTELLUNGEN" 
/INCLUDE-PROCEDURE NAME=MAKEFILE     "AUFRUF DES MAKEFILES" 
/END-BLOCK 
//END-MAKE                           "ENDE VON MAKE" 
... 

Der Prozedurrahmen und die Datei MAKEFILE sind im Beispiel für die make-Funktionalität auf "make-Lauf" abgebildet.