/[pcre]/code/trunk/PrepareRelease
ViewVC logotype

Contents of /code/trunk/PrepareRelease

Parent Directory Parent Directory | Revision Log Revision Log


Revision 128 - (hide annotations) (download)
Tue Mar 20 11:46:50 2007 UTC (7 years, 5 months ago) by ph10
File size: 5390 byte(s)
Make the use of dftables optional, and not the default. Further tidies to 
documentation.

1 ph10 97 #/bin/sh
2    
3 ph10 111 # Script to prepare the files for building a PCRE release. It does some
4     # processing of the documentation, detrails files, and creates pcre.h.generic
5     # and config.h.generic (for use by builders who can't run ./configure).
6 ph10 97
7 ph10 111 # You must run this script before runnning "make dist". It makes use of the
8     # following files:
9 ph10 97
10 ph10 111 # 132html A Perl script that converts a .1 or .3 man page into HTML. It
11     # is called from MakeRelease. It "knows" the relevant troff
12     # constructs that are used in the PCRE man pages.
13 ph10 97
14 ph10 111 # CleanTxt A Perl script that cleans up the output of "nroff -man" by
15     # removing backspaces and other redundant text so as to produce
16     # a readable .txt file.
17 ph10 97
18 ph10 111 # Detrail A Perl script that removes trailing spaces from files.
19 ph10 97
20 ph10 128 # doc/index.html.src
21 ph10 127 # A file that is copied as index.html into the doc/html directory
22     # when the HTML documentation is built. It works like this so that
23     # doc/html can be deleted and re-created from scratch.
24 ph10 97
25    
26     # First, sort out the documentation
27    
28     cd doc
29     echo Processing documentation
30    
31     # Make Text form of the documentation. It needs some mangling to make it
32     # tidy for online reading. Concatenate all the .3 stuff, but omit the
33     # individual function pages.
34    
35     cat <<End >pcre.txt
36     -----------------------------------------------------------------------------
37     This file contains a concatenation of the PCRE man pages, converted to plain
38     text format for ease of searching with a text editor, or for use on systems
39     that do not have a man page processor. The small individual files that give
40     synopses of each function in the library have not been included. There are
41     separate text files for the pcregrep and pcretest commands.
42     -----------------------------------------------------------------------------
43    
44    
45     End
46    
47     echo "Making pcre.txt"
48     for file in pcre pcrebuild pcrematching pcreapi pcrecallout pcrecompat \
49     pcrepattern pcrepartial pcreprecompile \
50     pcreperform pcreposix pcrecpp pcresample pcrestack ; do
51     echo " Processing $file.3"
52     nroff -c -man $file.3 >$file.rawtxt
53 ph10 111 ../CleanTxt <$file.rawtxt >>pcre.txt
54 ph10 97 /bin/rm $file.rawtxt
55     echo "------------------------------------------------------------------------------" >>pcre.txt
56     if [ "$file" != "pcresample" ] ; then
57     echo " " >>pcre.txt
58     echo " " >>pcre.txt
59     fi
60     done
61    
62     # The two commands
63     for file in pcretest pcregrep ; do
64     echo Making $file.txt
65     nroff -c -man $file.1 >$file.rawtxt
66 ph10 111 ../CleanTxt <$file.rawtxt >$file.txt
67 ph10 97 /bin/rm $file.rawtxt
68     done
69    
70    
71     # Make HTML form of the documentation.
72    
73 ph10 111 echo "Making HTML documentation"
74 ph10 97 /bin/rm html/*
75 ph10 127 cp index.html.src html/index.html
76 ph10 97
77     for file in *.1 ; do
78     base=`basename $file .1`
79 ph10 111 echo " Making $base.html"
80     ../132html -toc $base <$file >html/$base.html
81 ph10 97 done
82    
83     # Exclude table of contents for function summaries. It seems that expr
84     # forces an anchored regex. Also exclude them for small pages that have
85     # only one section.
86     for file in *.3 ; do
87     base=`basename $file .3`
88     toc=-toc
89     if [ `expr $base : '.*_'` -ne 0 ] ; then toc="" ; fi
90     if [ "$base" = "pcresample" ] || \
91     [ "$base" = "pcrestack" ] || \
92     [ "$base" = "pcrecompat" ] || \
93     [ "$base" = "pcreperform" ] ; then
94     toc=""
95     fi
96 ph10 111 echo " Making $base.html"
97     ../132html $toc $base <$file >html/$base.html
98     if [ $? != 0 ] ; then exit 1; fi
99 ph10 97 done
100    
101     # End of documentation processing
102    
103     cd ..
104     echo Documentation done
105    
106 ph10 111 # These files are detrailed; do not detrail the test data because there may be
107     # significant trailing spaces. The configure files are also omitted from the
108     # detrailing.
109 ph10 97
110 ph10 111 files="\
111     Makefile.am \
112     Makefile.in \
113     configure.ac \
114     README \
115     LICENCE \
116     COPYING \
117     AUTHORS \
118     NEWS \
119     NON-UNIX-USE \
120     INSTALL \
121     132html \
122     CleanTxt \
123     Detrail \
124     ChangeLog \
125     CMakeLists.txt \
126     RunGrepTest.in \
127     RunTest.in \
128     RunTest.bat \
129 ph10 97 pcre-config.in \
130     libpcre.pc.in \
131     libpcrecpp.pc.in \
132 ph10 111 config.h \
133     config.h.in \
134 ph10 97 pcre_printint.src \
135 ph10 128 pcre_chartables.c.dist \
136 ph10 97 pcredemo.c \
137     pcregrep.c \
138     pcretest.c \
139     dftables.c \
140     pcreposix.c \
141     pcreposix.h \
142     pcre.h \
143 ph10 111 pcre.h.in \
144 ph10 97 pcre_internal.h
145     pcre_compile.c \
146     pcre_config.c \
147     pcre_dfa_exec.c \
148     pcre_exec.c \
149     pcre_fullinfo.c \
150     pcre_get.c \
151     pcre_globals.c \
152     pcre_info.c \
153     pcre_maketables.c \
154     pcre_newline.c \
155     pcre_ord2utf8.c \
156     pcre_refcount.c \
157     pcre_study.c \
158     pcre_tables.c \
159     pcre_try_flipped.c \
160     pcre_ucp_searchfuncs.c \
161     pcre_valid_utf8.c \
162     pcre_version.c \
163     pcre_xclass.c \
164     pcre_scanner.cc \
165     pcre_scanner.h \
166     pcre_scanner_unittest.cc \
167     pcrecpp.cc \
168     pcrecpp.h \
169     pcrecpparg.h.in \
170     pcrecpp_unittest.cc \
171     pcre_stringpiece.cc \
172     pcre_stringpiece.h.in \
173     pcre_stringpiece_unittest.cc \
174     perltest.pl \
175     ucp.h \
176     ucpinternal.h \
177     ucptable.h \
178     makevp.bat \
179     pcre.def \
180     libpcre.def \
181     libpcreposix.def"
182    
183     echo Detrailing
184 ph10 111 ./Detrail $files doc/p* doc/html/*
185 ph10 97
186 ph10 111 echo Converting pcre.h and config.h to generic forms
187     cp -f pcre.h pcre.h.generic
188 ph10 97
189 ph10 111 perl <<'END'
190     open(IN, "<config.h") || die "Can't open config.h: $!\n";
191     open(OUT, ">config.h.generic") || die "Can't open config.h.generic: $!\n";
192     while (<IN>)
193     {
194     if (/^#define\s(?!PACKAGE)(\w+)/)
195     {
196     print OUT "#ifndef $1\n";
197     print OUT;
198     print OUT "#endif\n";
199     }
200     else
201     {
202     print OUT;
203     }
204     }
205     close IN;
206     close OUT;
207     END
208 ph10 97
209     #End

Properties

Name Value
svn:executable *

webmaster@exim.org
ViewVC Help
Powered by ViewVC 1.1.12