annotate src/make-src-depend @ 4888:c27efc9acb5a

merge
author Ben Wing <ben@xemacs.org>
date Wed, 27 Jan 2010 00:37:59 -0600
parents 6dffa171b748
children f23cd0184dcf
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1 : #-*- Perl -*-
1303
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
2
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
3 ### make-src-depend --- update the Makefile dependency information for XEmacs
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
4
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
5 # Copyright (C) 1998 Free Software Foundation, Inc.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
6
1303
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
7 ## Author: Martin Buchholz <martin@xemacs.org>
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
8 ## Maintainer: XEmacs Development Team
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
9
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
10 ## This file is part of XEmacs.
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
11
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
12 ## XEmacs is free software; you can redistribute it and/or modify it
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
13 ## under the terms of the GNU General Public License as published by
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
14 ## the Free Software Foundation; either version 2, or (at your option)
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
15 ## any later version.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
16
1303
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
17 ## XEmacs is distributed in the hope that it will be useful, but
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
18 ## WITHOUT ANY WARRANTY; without even the implied warranty of
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
19 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
20 ## General Public License for more details.
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
21
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
22 ## You should have received a copy of the GNU General Public License
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
23 ## along with XEmacs; see the file COPYING. If not, write to the Free
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
24 ## Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
25 ## 02111-1307, USA.
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
26
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
27 eval 'exec perl -w -S $0 ${1+"$@"}'
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
28 if 0;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
29
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
30 use strict;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
31 my ($myName, $srcdir, %exists, %uses, %generated_header);
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
32
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
33 ($myName = $0) =~ s@.*/@@; my $usage ="
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
34 Usage: $myName
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
35
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
36 Generates Makefile dependencies for the XEmacs src directory.
1303
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
37 The dependencies are written to stdout.
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
38 ";
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
39
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
40 die $usage if @ARGV;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
41
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
42 ($srcdir = $0) =~ s@[^/]+$@@;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
43 $srcdir = "." if $srcdir eq "";
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
44 chdir $srcdir or die "$srcdir: $!";
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
45
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
46 opendir SRCDIR, "." or die "$srcdir: $!";
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
47 for (grep (/\.[ch]$/, readdir (SRCDIR))) { $exists{$_} = 1; }
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
48 closedir SRCDIR;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
49
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
50 for (qw (config.h sheap-adjust.h paths.h Emacs.ad.h)) {
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
51 $generated_header{$_} = 1;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
52 }
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
53
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
54 # Although this is not technically true, it ought to be true,
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
55 # and makes the generated Makefile smaller.
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
56 $uses{'lisp.h'}{'config.h'} = 1;
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
57
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
58 for my $file (keys %exists) {
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
59 open (FILE, $file) or die "$file: $!";
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
60 undef $/; $_ = <FILE>;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
61 RemoveComments ($_);
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
62 s/[ \t]+//g;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
63 # Find include dependencies
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
64 for (/^\#include([^\n]+)/gm) {
462
0784d089fdc9 Import from CVS: tag r21-2-46
cvs
parents: 452
diff changeset
65 if (m@^\"([A-Za-z0-9._-]+\.[ch])\"@) {
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
66 $uses{$file}{$1} = 1 if exists $exists{$1};
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
67 } elsif (m@<([A-Za-z0-9._-]+\.h)>@) {
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
68 $uses{$file}{$1} = 1 if exists $generated_header{$1};
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
69 } elsif (m@\"../lwlib/([A-Za-z0-9._-]+\.h)\"@) {
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
70 $uses{$file}{"\$(LWLIB_SRCDIR)/lwlib.h"} = 1;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
71 }
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
72 }
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
73 }
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
74
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
75 # Make transitive closure of %uses
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
76 while (1) {
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
77 my $changedP = 0;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
78 for my $x (keys %uses) {
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
79 for my $y (keys %{$uses{$x}}) {
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
80 for my $z (keys %{$uses{$y}}) {
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
81 if (! exists $uses{$x}{$z}) {
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
82 $uses{$x}{$z} = 1;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
83 $changedP = 1;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
84 }
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
85 }
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
86 }
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
87 }
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
88 last if !$changedP;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
89 }
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
90
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
91 # Print file header
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
92 print
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
93 "## This file is automatically generated by \`$myName'. Do not modify.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
94
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
95 #if defined(USE_UNION_TYPE)
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
96 LISP_UNION_H=lisp-union.h
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
97 #else
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
98 LISP_UNION_H=lisp-disunion.h
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
99 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
100 ";
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
101
452
3d3049ae1304 Import from CVS: tag r21-2-41
cvs
parents: 442
diff changeset
102 my @LISP_H = ('lisp.h', sort keys %{$uses{'lisp.h'}});
1303
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
103 print "
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
104 #if defined(QUICK_BUILD)
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
105 CONFIG_H=
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
106 LISP_H=
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
107 #else
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
108 CONFIG_H=config.h
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
109 LISP_H=@{[grep (!/lisp-(dis)?union\.h/, @LISP_H)]} \$(LISP_UNION_H)
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
110 #endif
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
111
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
112 ";
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
113
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
114 sub PrintDeps {
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
115 my $file = shift;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
116 my $ofile = $file; $ofile =~ s/c$/o/; print "$ofile: ";
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
117 if (exists $uses{$file}{'lisp.h'}) {
4411
6dffa171b748 hgignore TAGS.
Stephen J. Turnbull <stephen@xemacs.org>
parents: 1333
diff changeset
118 delete $uses{$file}{@LISP_H};
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
119 $uses{$file}{'$(LISP_H)'} = 1;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
120 }
1303
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
121 # Note: If both config.h and lisp.h are dependencies, config.h got deleted
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
122 # by the last clause.
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
123 if (exists $uses{$file}{'config.h'}) {
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
124 delete $uses{$file}{'config.h'};
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
125 $uses{$file}{'$(CONFIG_H)'} = 1;
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
126 }
1333
1b0339b048ce [xemacs-hg @ 2003-03-02 09:38:37 by ben]
ben
parents: 1304
diff changeset
127 # Huge hack. With QUICK_BUILD, general.c has no dependence on
1b0339b048ce [xemacs-hg @ 2003-03-02 09:38:37 by ben]
ben
parents: 1304
diff changeset
128 # general-slots.h but really should.
1b0339b048ce [xemacs-hg @ 2003-03-02 09:38:37 by ben]
ben
parents: 1304
diff changeset
129 $uses{$file}{'general-slots.h'} = 1 if $file eq "general.c";
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
130 print "@{[sort keys %{$uses{$file}}]}\n";
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
131 }
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
132
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
133 sub PrintPatternDeps {
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
134 my ($pattern, $CPP_SYMBOL) = @_;
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
135 print "#if defined($CPP_SYMBOL)\n";
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
136 for my $file (sort grep (/$pattern/ && /\.c$/, keys %uses)) {
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
137 PrintDeps($file);
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
138 delete $uses{$file};
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
139 }
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
140 print "#endif\n";
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
141 }
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
142
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
143 PrintPatternDeps ('-msw\\.', "HAVE_MS_WINDOWS");
1303
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
144 PrintPatternDeps ('-xlike', "HAVE_XLIKE");
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
145 # X-specific files: *-x.c *-x-impl.h xgccache.c balloon_help.c x*.h Emacs*.[ch]
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
146 PrintPatternDeps ('-x\\.|xgccache|balloon_help|^Emacs', "HAVE_X_WINDOWS");
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
147 PrintPatternDeps ('-tty\\.', "HAVE_TTY");
1303
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
148 # GTK-specific files: *-gtk.[ch] *-gtk-*.[ch] gtk-*.[ch] emacs-marshals.c emacs-widget-accessors.c glade.c ui-byhand.c
f99d3d25df86 [xemacs-hg @ 2003-02-15 10:15:54 by ben]
ben
parents: 462
diff changeset
149 PrintPatternDeps ('gtk|emacs-marshals|emacs-widget-accessors|glade|ui-byhand', "HAVE_GTK");
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
150 PrintPatternDeps ('^database', "HAVE_DATABASE");
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
151 PrintPatternDeps ('^mule', "MULE");
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
152 PrintPatternDeps ('^(?:External|extw-)', "EXTERNAL_WIDGET");
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
153
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
154 for my $file (sort grep (/\.c$/, keys %uses)) { PrintDeps($file); }
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
155
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
156 # Surprisingly robust regexp to remove comments from arbitrary C code
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
157 sub RemoveComments {
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
158 $_[0] =~
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
159 s{ (
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
160 [^\"\'/]+ |
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
161 (?:\"[^\"\\]*(?:\\.[^\"\\]*)*\" [^\"\'/]*)+ |
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
162 (?:\'[^\'\\]*(?:\\.[^\'\\]*)*\' [^\"\'/]*)+
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
163 )
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
164 | / (?:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
165 \*[^*]*\*+(?:[^/*][^*]*\*+)*/
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
166 |
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
167 /[^\n]*
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
168 )
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
169 }{defined $1 ? $1 : ""}gsxeo;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
170 }