Example 1: ++JCLIN data packaged inline

Here is an example of a SYSMOD containing a ++JCLIN statement for packaging JCLIN inline:
++FUNCTION(JXY1040)         /* Function SYSMOD.         */.
++VER(Z038)                 /* For MVS, no requisites.  */.
++JCLIN                     /* JCLIN is required.       */.
//JOB      JOB 'accounting info',MSGLEVEL=(1,1)
//STEP1    EXEC PGM=IEWL
//SYSLMOD  DD DSN=SYS1.LINKLIB,DISP=SHR
//AOS12    DD DSN=SYS1.AOS12,DISP=SHR
//SYSLIN   DD *
 INCLUDE AOS12(IFBMOD01)
 ENTRY   IFBMOD01
 ALIAS   IFBMOD01A
 NAME    IFBMOD01(R)
/*
++MOD(IFBMOD01)             /* This module              */
            DISTLIB(AOS12)  /* for this DLIB.           */.
...
... object deck for IFBMOD01
...
++MAC(IFBMAC01)             /* This macro               */
            DISTLIB(AMACLIB) /* for this DLIB.          */.
...
... macro replacement for IFBMAC01
...

No special DD statements, other than those for the target and DLIBs, are required to process this SYSMOD.

During APPLY, SMP/E processes the ++JCLIN data, determines that module IFBMOD01 gets linked into load module IFBMOD01 (which has an alias), stores information in the target zone, and then invokes the proper utilities to install the module and macro.