[comp.lang.ada] Protecting binary libraries in VAX Ada

mooremj@EGLIN-VAX.ARPA ("MARTIN J. MOORE") (02/29/88)

> From: clyde!wayback!arny@bellcore.bellcore.com  (Arny B. Engelson)
> Subject: Protection for Ada Binary Libraries
> [...]  My (current) solution (using DEC's VAX Ada) is to simply delete the
> .ADC (the copied source) files from the Ada library for those units that 
> the user doesn't need to see.  [...] 

You are working too hard.  You can tell the VAX Ada compiler not to create
the .ADC files in the first place by using the /NOCOPY_SOURCE qualifier on
the ADA, ACS COMPILE, or ACS RECOMPILE commands.  From the on-line help text:

| $ HELP ADA /COPY_SOURCE
| 
| ADA
| 
|   /COPY_SOURCE
| 
|    /COPY_SOURCE (D)
|    /NOCOPY_SOURCE
| 
|     Controls whether a copied source file (.ADC) is created in the current
|     program  library  when  a  compilation unit is compiled without error.
|     The RECOMPILE command requires that a copied source file exist in  the
|     current program library for any unit that is to be recompiled.
| 
|     By default, a copied source file is created  in  the  current  program
|     library when a unit is compiled without error.

Martin Moore
mooremj@eglin-vax.arpa
------

arny@wayback.UUCP (Arny B. Engelson) (03/07/88)

In article <8802291335.AA14051@ajpo.sei.cmu.edu>, mooremj@EGLIN-VAX.ARPA ("MARTIN J. MOORE") writes:
> > From: clyde!wayback!arny@bellcore.bellcore.com  (Arny B. Engelson)
> > [...]  My (current) solution (using DEC's VAX Ada) is to simply delete the
> > .ADC (the copied source) files from the Ada library for those units that 
> > the user doesn't need to see.  [...] 
 
> You are working too hard.  You can tell the VAX Ada compiler not to create
> the .ADC files in the first place by using the /NOCOPY_SOURCE qualifier on
> the ADA, ACS COMPILE, or ACS RECOMPILE commands.  From the on-line help text:
 
[Manual entry deleted for brevity]

Yes, I know all that.  Problem is, the copy of the library I am sending out is
the same version my in-house users are using.  *I* need the source code there
so I can use the symbolic debugger when a problem is found, and know I am using
it on the same version of the program(s).  So, I temporarily copy the .ADC
files to another directory, make the tape, and copy them back.  Soon, I will
be able to separate the development and released versions onto different disks,
which will enable me to build a separate library for release and to reload old
releases without affecting the development version.

Even so, typing in 2 "rename" commands is not all that much work.  And if this
were the most worrisome problem in sending contract deliverables, I would cry
tears of joy.  SInce this is a fairly limited topic, I suggest any further
comments on this be mailed direct.

Arny Engelson
{ihnp4,clyde}!wayback!arny