@profoundlogic/codermake 2.0.7 → 2.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -255,6 +255,38 @@ $(SET_LIBL)
255
255
  system "crtprtf file($(TARGET_LIB)/$(call ibmi_name_sh,$@)) srcfile($(TARGET_LIB)/qddssrc) srcmbr($(call ibmi_name_sh,$<))"
256
256
  endef
257
257
 
258
+ # Build System/38 display file
259
+ define BUILD_DSPF38_TO_FILE
260
+ $(call SETUP_LOG,$(notdir $@))
261
+ $(call CREATE_SOURCE_MEMBER,$<,qddssrc)
262
+ $(SET_LIBL)
263
+ system "qsys38/crtdspf file($(TARGET_LIB)/$(call ibmi_name_sh,$@)) srcfile($(TARGET_LIB)/qddssrc) srcmbr($(call ibmi_name_sh,$<))"
264
+ endef
265
+
266
+ # Build System/38 physical file
267
+ define BUILD_PF38_TO_FILE
268
+ $(call SETUP_LOG,$(notdir $@))
269
+ $(call CREATE_SOURCE_MEMBER,$<,qddssrc)
270
+ $(SET_LIBL)
271
+ system "qsys38/crtpf file($(TARGET_LIB)/$(call ibmi_name_sh,$@)) srcfile($(TARGET_LIB)/qddssrc) srcmbr($(call ibmi_name_sh,$<))"
272
+ endef
273
+
274
+ # Build System/38 logical file
275
+ define BUILD_LF38_TO_FILE
276
+ $(call SETUP_LOG,$(notdir $@))
277
+ $(call CREATE_SOURCE_MEMBER,$<,qddssrc)
278
+ $(SET_LIBL)
279
+ system "qsys38/crtlf file($(TARGET_LIB)/$(call ibmi_name_sh,$@)) srcfile($(TARGET_LIB)/qddssrc) srcmbr($(call ibmi_name_sh,$<))"
280
+ endef
281
+
282
+ # Build System/38 printer file
283
+ define BUILD_PRTF38_TO_FILE
284
+ $(call SETUP_LOG,$(notdir $@))
285
+ $(call CREATE_SOURCE_MEMBER,$<,qddssrc)
286
+ $(SET_LIBL)
287
+ system "qsys38/crtprtf file($(TARGET_LIB)/$(call ibmi_name_sh,$@)) srcfile($(TARGET_LIB)/qddssrc) srcmbr($(call ibmi_name_sh,$<))"
288
+ endef
289
+
258
290
  # Build SQL table
259
291
  define BUILD_SQLTABLE_TO_FILE
260
292
  $(call SETUP_LOG,$(notdir $@))
@@ -367,6 +367,50 @@ EOF
367
367
  touch '$@'
368
368
  endef
369
369
 
370
+ # Build System/38 display file
371
+ define BUILD_DSPF38_TO_FILE
372
+ $(call SETUP_LOG,$(notdir $@))
373
+ $(call CREATE_SOURCE_MEMBER,$<,qddssrc)
374
+ $(SSH) $(QSHELL) <<'EOF'
375
+ $(SET_LIBL)
376
+ system "qsys38/crtdspf file($(TARGET_LIB)/$(call ibmi_name_sh,$@)) srcfile($(TARGET_LIB)/qddssrc) srcmbr($(call ibmi_name_sh,$<))"
377
+ EOF
378
+ touch '$@'
379
+ endef
380
+
381
+ # Build System/38 physical file
382
+ define BUILD_PF38_TO_FILE
383
+ $(call SETUP_LOG,$(notdir $@))
384
+ $(call CREATE_SOURCE_MEMBER,$<,qddssrc)
385
+ $(SSH) $(QSHELL) <<'EOF'
386
+ $(SET_LIBL)
387
+ system "qsys38/crtpf file($(TARGET_LIB)/$(call ibmi_name_sh,$@)) srcfile($(TARGET_LIB)/qddssrc) srcmbr($(call ibmi_name_sh,$<))"
388
+ EOF
389
+ touch '$@'
390
+ endef
391
+
392
+ # Build System/38 logical file
393
+ define BUILD_LF38_TO_FILE
394
+ $(call SETUP_LOG,$(notdir $@))
395
+ $(call CREATE_SOURCE_MEMBER,$<,qddssrc)
396
+ $(SSH) $(QSHELL) <<'EOF'
397
+ $(SET_LIBL)
398
+ system "qsys38/crtlf file($(TARGET_LIB)/$(call ibmi_name_sh,$@)) srcfile($(TARGET_LIB)/qddssrc) srcmbr($(call ibmi_name_sh,$<))"
399
+ EOF
400
+ touch '$@'
401
+ endef
402
+
403
+ # Build System/38 printer file
404
+ define BUILD_PRTF38_TO_FILE
405
+ $(call SETUP_LOG,$(notdir $@))
406
+ $(call CREATE_SOURCE_MEMBER,$<,qddssrc)
407
+ $(SSH) $(QSHELL) <<'EOF'
408
+ $(SET_LIBL)
409
+ system "qsys38/crtprtf file($(TARGET_LIB)/$(call ibmi_name_sh,$@)) srcfile($(TARGET_LIB)/qddssrc) srcmbr($(call ibmi_name_sh,$<))"
410
+ EOF
411
+ touch '$@'
412
+ endef
413
+
370
414
  # Build SQL table
371
415
  define BUILD_SQLTABLE_TO_FILE
372
416
  $(call SETUP_LOG,$(notdir $@))
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@profoundlogic/codermake",
3
- "version": "2.0.7",
3
+ "version": "2.0.8",
4
4
  "description": "Make wrapper framework for IBM i development that simplifies build rules",
5
5
  "main": "dist/bin/index.js",
6
6
  "type": "module",
@@ -163,6 +163,10 @@ ENDPGMEXP
163
163
  | `.pf` | `.file` | Physical File (*FILE) | `CRTPF` |
164
164
  | `.lf` | `.file` | Logical File (*FILE) | `CRTLF` |
165
165
  | `.prtf` | `.file` | Printer File (*FILE) | `CRTPRTF` |
166
+ | `.dspf38` | `.file` | Display File (*FILE) | `QSYS38/CRTDSPF` (System/38, `DSPF38` member) |
167
+ | `.pf38` | `.file` | Physical File (*FILE) | `QSYS38/CRTPF` (System/38, `PF38` member) |
168
+ | `.lf38` | `.file` | Logical File (*FILE) | `QSYS38/CRTLF` (System/38, `LF38` member) |
169
+ | `.prtf38` | `.file` | Printer File (*FILE) | `QSYS38/CRTPRTF` (System/38, `PRTF38` member) |
166
170
  | `.table.sql` | `.file` | SQL Table (*FILE) | `RUNSQLSTM` |
167
171
  | `.index.sql` | `.file` | SQL Index (*FILE) | `RUNSQLSTM` |
168
172
  | `.view.sql` | `.file` | SQL View (*FILE) | `RUNSQLSTM` |
@@ -87,9 +87,9 @@ For ILE CL (`CRTBNDCL`, `CRTCLMOD`), the listing structure is similar to RPG --
87
87
 
88
88
  For OPM CL (`CRTCLPGM`), the output is typically shorter and errors reference source sequence numbers.
89
89
 
90
- ## DDS listings (.dspf, .pf, .lf, .prtf)
90
+ ## DDS listings (.dspf, .pf, .lf, .prtf, and their System/38 `.dspf38`/`.pf38`/`.lf38`/`.prtf38` variants)
91
91
 
92
- DDS compilation errors from `CRTDSPF`, `CRTPF`, `CRTLF`, or `CRTPRTF` produce `CPD` messages:
92
+ DDS compilation errors from `CRTDSPF`, `CRTPF`, `CRTLF`, or `CRTPRTF` produce `CPD` messages. The System/38 `.dspf38`, `.pf38`, `.lf38`, and `.prtf38` variants use the corresponding `QSYS38/...` commands.
93
93
 
94
94
  ```
95
95
  CPD7302 30 Record format SCREEN1 not found in file referenced.
@@ -215,6 +215,25 @@ report.file: report.prtf
215
215
 
216
216
  **CL command:** `CRTPRTF FILE(LIB/REPORT) SRCFILE(LIB/QDDSSRC)`
217
217
 
218
+ ### System/38 compatible DDS (.pf38, .lf38, .dspf38, .prtf38)
219
+
220
+ System/38 compatible versions of `.pf`, `.lf`, `.dspf`, and `.prtf`. They build
221
+ through dedicated recipes that qualify the compile command from `QSYS38`. The
222
+ parameters currently match the base DDS recipes, but the commands are
223
+ `QSYS38/CRTPF`, `QSYS38/CRTLF`, `QSYS38/CRTDSPF`, and `QSYS38/CRTPRTF`. The
224
+ temporary source member's source type is derived from the file extension:
225
+ `.pf38` → `PF38`, `.lf38` → `LF38`, `.dspf38` → `DSPF38`, `.prtf38` → `PRTF38`.
226
+ Use these when a source member must retain its System/38 source type.
227
+
228
+ ```makefile
229
+ custp38.file: custp38.pf38 # QSYS38/CRTPF, PF38 member
230
+ custl38.file: custl38.lf38 custp38.file # QSYS38/CRTLF, LF38 member
231
+ hello38.file: hello38.dspf38 # QSYS38/CRTDSPF, DSPF38 member
232
+ rpt38.file: rpt38.prtf38 # QSYS38/CRTPRTF, PRTF38 member
233
+ ```
234
+
235
+ **CL commands:** `QSYS38/CRTPF` / `QSYS38/CRTLF` / `QSYS38/CRTDSPF` / `QSYS38/CRTPRTF`
236
+
218
237
  ### SQL table from .table.sql
219
238
 
220
239
  Creates a SQL table by running a DDL script.