[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: CVS update: MODIFIED: . ...

From: Greg Stein <gstein_at_lyra.org>
Date: 2001-08-08 03:11:11 CEST

On Tue, Aug 07, 2001 at 10:25:58PM -0000, kfogel@tigris.org wrote:
>...
> --- Makefile.in 2001/07/10 23:24:44 1.21
> +++ Makefile.in 2001/08/07 22:25:58 1.22
> @@ -29,6 +29,12 @@
> DVIPS = dvips
> DVIPDF = dvipdf
>
> +### See `dist' rule.
> +DIST_SANDBOX = .dist_sandbox
> +DISTNAME = subversion
> +VERSION = `grep SVN_VERSION svn_private_config.h | cut -f 3 -d ' ' | sed -e 's/"//g'`

Pull the version from configure.in -- that is the "original" source.
svn_private_config.h is a couple steps down the configure/build process.

>...
> +## Build a tarball.
> +#
> +# Notes:
> +#
> +# After Subversion is checked into itself, it will be a lot easier to
> +# define this rule in terms of what should be included in the dist,
> +# instead of what shouldn't.
> +#
> +# Although `make distclean' should clean up apr and neon, in reality
> +# neon/src/ still has .o files afterwards. So we clean them up by
> +# hand below. Better to patch Neon, of course; but the fix wasn't
> +# obvious to me -- something to do with @NEONOBJS@ in
> +# neon/src/Makefile.in?
> +dist: ChangeLog
> + @rm -rf ${DIST_SANDBOX}
> + @mkdir ${DIST_SANDBOX}
> + @mkdir ${DIST_SANDBOX}/subversion
> + @cp -v -d -r * ${DIST_SANDBOX}/subversion
> + @rm -rf `find ${DIST_SANDBOX}/subversion -name CVS -print`
> + @rm -rf `find ${DIST_SANDBOX}/subversion -name .cvsignore -print`
> + @(cd ${DIST_SANDBOX}/subversion; \
> + make distclean; \
> + ./autogen.sh; \
> + rm -f neon/src/*.o; \
> + cd ..; \
> + cp ../svn_private_config.h .; \
> + echo "Rolling ${DISTNAME}-${VERSION}.tar.gz ..."; \
> + tar zcvpf ${DISTNAME}-${VERSION}.tar.gz subversion; \
> + )
> + @cp ${DIST_SANDBOX}/*.tar.gz .
> + @rm -rf ${DIST_SANDBOX}
> + @echo "Done; see `ls -1 subversion-*.tar.gz`."

Personally, I would recommend a short script that can pull the information
from CVS, then add in the necessary bits. By putting it into the makefile, a
person must first go through the full get-from-CVS, autogen, configure
process.

Further, note that changes to the dist process would require changing
Makefile.in, then re-running configure. A plain release script is much
cleaner :-)

I've attached an example script that I use for my "edna" application. I use
a similar one for ViewCVS.

Cheers,
-g

-- 
Greg Stein, http://www.lyra.org/


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Received on Sat Oct 21 14:36:35 2006

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.