[pcre-dev] Creating a distribution

トップ ページ
このメッセージを削除
著者: Philip Hazel
日付:  
To: pcre-dev
題目: [pcre-dev] Creating a distribution
Folks,

Following the application of Bob and Daniel's patch, I'm working through
a number of small issues (almost all to do with building and/or
documentation - hardly anything affecting the code). One thing I have to
sort out is how to build the next release. Previously, I had my own
script to do this - before building the tarballs, it does a number of
things including processing the documentation (man pages -> html and
-> txt) and cleaning up trailing spaces. After building the tarballs it
signs them with my PGP key.

The patch has provided us with "make dist" to build tarballs. I propose
to adjust my script (renaming it from "MakeRelease" to "PrepareRelease")
so that it just does preparatory things[*]. The sequence for making a
release then becomes:

PrepareRelease
make dist
sign the tarballs
move the tarballs to wherever

which of course could all be encapsulated in another script. Does this
sound reasonable?

I wondered about arranging for PrepareRelease to be called automatically
by "make dist", but that would mean that PrepareRelease itself and the
other scripts it calls would have to be part of the distribution if we
want "make dist" to work in the distributed tarballs. At the moment, I
have these scripts in the maintain/ subdirectory, assuming they are not
to be distributed, but used only by package maintainers, who get them
from the SVN repository.

Anyone like to comment on this?

[*] A new preparatory thing has been suggested by someone who builds 
PCRE by hand (i.e. without the Autotools). I have already arranged that 
config.h is included in the distribution to help with this case. The 
suggestion is that every #define in config.h should be wrapped with 
#ifndef/#endif so that he can use -D on the compiler command line to 
override without having to edit config.h. This can easily be done as 
part of the PrepareRelease script.    


Philip

--
Philip Hazel, University of Cambridge Computing Service.