Skip to Main Content
IBM Z Software


This portal is to open public enhancement requests against IBM Z Software products. To view all of your ideas submitted to IBM, create and manage groups of Ideas, or create an idea explicitly set to be either visible by all (public) or visible only to you and IBM (private), use the IBM Unified Ideas Portal (https://ideas.ibm.com).


Shape the future of IBM!

We invite you to shape the future of IBM, including product roadmaps, by submitting ideas that matter to you the most. Here's how it works:

Search existing ideas

Start by searching and reviewing ideas and requests to enhance a product or service. Take a look at ideas others have posted, and add a comment, vote, or subscribe to updates on them if they matter to you. If you can't find what you are looking for,

Post your ideas
  1. Post an idea.

  2. Get feedback from the IBM team and other customers to refine your idea.

  3. Follow the idea through the IBM Ideas process.


Specific links you will want to bookmark for future use

Welcome to the IBM Ideas Portal (https://www.ibm.com/ideas) - Use this site to find out additional information and details about the IBM Ideas process and statuses.

IBM Unified Ideas Portal (https://ideas.ibm.com) - Use this site to view all of your ideas, create new ideas for any IBM product, or search for ideas across all of IBM.

ideasibm@us.ibm.com - Use this email to suggest enhancements to the Ideas process or request help from IBM for submitting your Ideas.

Status Under review
Workspace COBOL Compilers
Categories z/OS
Created by Guest
Created on Aug 31, 2024

IBM Enterprise COBOL V6R4+ - Add support for the equivalent of the -M option from the USS version of the compiler to the MVS version of the compiler

Hi,

The USS version of the IBM Enterprise COBOL V6R4 compiler, cob2, has a -M option that allows to produce a makefile of dependencies between the program and the copybooks it uses:

mkdepend.o: mkdepend.cbl
mkdepend.o: /home/usera/test/f171592/WSCOPY1.cpy
mkdepend.o: /home/usera/test/f171592/PDCOPY1.cpy
mkdepend.o: /home/usera/test/f171592/PDCOPY2.cpy


We would like to have for the MVS version of IBM Enterprise COBOL, a file output that lists the program dependencies, (SYSDEPS ?), containing some of the informations of type x'0060' record of the SYSADATA file, either formatted or parsable in a key/value format.

For example:


PROGRAM: MKDEPEND COPY: WSCOPY1 LIBRARY: USERA.TEST.F171592
PROGRAM: MKDEPEND COPY: PDCOPY1 LIBRARY: USERA.TEST.F171592
PROGRAM: MKDEPEND COPY: PDCOPY2 LIBRARY: USERA.TEST.F171592


However the purpose of this file is not to be used by the make utility, but only to know the dependencies of the compiled program.

This file could also contain other dependency information:

  • Nested Programs, equivalent to record x'0046' in the SYSADATA file

  • User Defined Functions, not tracked in the SYSADATA file?

This enhancement would allow us to exploit the list of copybooks actually used by the program, with the inclusion of nested copybooks, and the exclusion of copybooks not selected by conditional compilation, to build an automatic recompilation solution based on dependencies, or an impact study solution in case of copybook modifications.


For information, we use IBM Dependency Based Build in our compilation process, but IBM DBB does an analysis before compilation, based on scanners that do not process conditional compilation, (which incidentally produces an unreliable result), while the IBM Enterprise COBOL compiler is able to provide the list after compilation of the copybooks actually used.


Thanks.

Idea priority Medium
  • Admin
    Basil Kanneth
    Reply
    |
    Oct 23, 2024

    Hi Denis, please consider using the XRFE section of the listing to figure out the dependencies for this idea. More info can be found here:
    https://www.ibm.com/docs/en/cobol-zos/6.4?topic=options-xref

  • Admin
    Basil Kanneth
    Reply
    |
    Sep 24, 2024

    This idea is being investigated further.