~peter-pearse/ubuntu/natty/unzip/prop001

« back to all changes in this revision

Viewing changes to vms/collect_deps.com

  • Committer: Bazaar Package Importer
  • Author(s): Santiago Vila
  • Date: 2009-05-08 20:02:40 UTC
  • mfrom: (1.1.2 upstream)
  • mto: This revision was merged to the branch mainline in revision 18.
  • Revision ID: james.westby@ubuntu.com-20090508200240-7l4gypruop5863bd
* New upstream release. Closes: #496989.
* Enabled new Unicode support. Closes: #197427. This may or may not work
  for your already created zipfiles, but it's not a bug unless they were
  created using the Unicode feature present in zip 3.0.
* Built using DATE_FORMAT=DF_YMD so that unzip -l show dates in ISO format,
  as that's the only available one which makes sense. Closes: #312886.
* Enabled new bzip2 support. Closes: #426798.
* Exit code for zipgrep should now be the right one. Closes: #441997.
* The reason why a file may not be created is now shown. Closes: #478791.
* Summary of changes in this version not being the debian/* files:
- Manpages in section 1, not 1L.
- Branding patch. UnZip by Debian. Original by Info-ZIP.
- Always #include <unistd.h>. Debian GNU/kFreeBSD needs it.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
$!                                              1 December 2006.  SMS.
 
2
$!
 
3
$! Info-ZIP VMS accessory procedure.
 
4
$!
 
5
$!    For the product named by P1,
 
6
$!    collect all source file dependencies specified by P3,
 
7
$!    and add P4 prefix.
 
8
$!    Convert absolute dependencies to relative from one level above P5.
 
9
$!    P2 = output file specification.
 
10
$!
 
11
$! MMS /EXTENDED_SYNTAX can't easily pass a macro invocation for P4, so
 
12
$! we remove any internal spaces which might have been added to prevent
 
13
$! immediate evaluation of a macro invocation.
 
14
$!
 
15
$ prefix = f$edit( p4, "COLLAPSE")
 
16
$!
 
17
$ dev_lose = f$edit( f$parse( p5, , , "DEVICE", "SYNTAX_ONLY"), "UPCASE")
 
18
$ dir_lose = f$edit( f$parse( p5, , , "DIRECTORY", "SYNTAX_ONLY"), "UPCASE")
 
19
$ suffix = ".VMS]"
 
20
$ suffix_loc = f$locate( suffix, dir_lose)
 
21
$ if (suffix_loc .lt f$length( dir_lose))
 
22
$ then
 
23
$    dev_dir_lose = dev_lose+ dir_lose- suffix
 
24
$ else
 
25
$    dev_dir_lose = dev_lose+ dir_lose- "]"
 
26
$ endif
 
27
$!
 
28
$! For portability, make the output file record format Stream_LF.
 
29
$!
 
30
$ create /fdl = sys$input 'p2'
 
31
RECORD
 
32
        Carriage_Control carriage_return
 
33
        Format stream_lf
 
34
$!
 
35
$ open /read /write /error = end_main deps_out 'p2'
 
36
$ on error then goto loop_main_end
 
37
$!
 
38
$! Include proper-inclusion-check preface.
 
39
$!
 
40
$ incl_macro = "INCL_"+ f$parse( p2, , , "NAME", "SYNTAX_ONLY")
 
41
$ write deps_out "#"
 
42
$ write deps_out "# ''p1' for VMS - MMS (or MMK) Source Dependency File."
 
43
$ write deps_out "#"
 
44
$ write deps_out ""
 
45
$ write deps_out -
 
46
   "# This description file is included by other description files.  It is"
 
47
$ write deps_out -
 
48
   "# not intended to be used alone.  Verify proper inclusion."
 
49
$ write deps_out ""
 
50
$ write deps_out ".IFDEF ''incl_macro'"
 
51
$ write deps_out ".ELSE"
 
52
$ write deps_out -
 
53
   "$$$$ THIS DESCRIPTION FILE IS NOT INTENDED TO BE USED THIS WAY."
 
54
$ write deps_out ".ENDIF"
 
55
$ write deps_out ""
 
56
$!
 
57
$! Actual dependencies from individual dependency files.
 
58
$!
 
59
$ loop_main_top:
 
60
$    file = f$search( p3)
 
61
$    if (file .eqs. "") then goto loop_main_end
 
62
$!
 
63
$    open /read /error = end_subs deps_in 'file'
 
64
$    loop_subs_top:
 
65
$       read /error = loop_subs_end deps_in line
 
66
$       line_reduced = f$edit( line, "COMPRESS, TRIM, UPCASE")
 
67
$       colon = f$locate( " : ", line_reduced)
 
68
$       d_d_l_loc = f$locate( dev_dir_lose, -
 
69
         f$extract( (colon+ 3), 1000, line_reduced))
 
70
$       if (d_d_l_loc .eq. 0)
 
71
$       then
 
72
$          front = f$extract( 0, (colon+ 3), line_reduced)
 
73
$          back = f$extract( (colon+ 3+ f$length( dev_dir_lose)), -
 
74
            1000, line_reduced)
 
75
$          line = front+ "["+ back
 
76
$       endif
 
77
$       write deps_out "''prefix'"+ "''line'"
 
78
$    goto loop_subs_top
 
79
$!
 
80
$    loop_subs_end:
 
81
$    close deps_in
 
82
$!
 
83
$ goto loop_main_top
 
84
$!
 
85
$ loop_main_end:
 
86
$ close deps_out
 
87
$!
 
88
$ end_main:
 
89
$!