You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Greg Stein <gs...@lyra.org> on 2001/08/08 01:11:11 UTC
Re: CVS update: MODIFIED: . ...
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/
Re: CVS update: MODIFIED: . ...
Posted by kf...@collab.net.
Greg Stein <gs...@lyra.org> writes:
> Pull the version from configure.in -- that is the "original" source.
> svn_private_config.h is a couple steps down the configure/build process.
Yeah, I think you're right. It's not quite as easy to parse, but
still not a problem, and it *is* the master after all. That will
simplify some other things, too.
Thanks for the suggestion! Will do.
> 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.
You mean the script would do a checkout? Hmmm.
I had been avoiding that method, because what I want is to build a
dist from exactly what I have in my working copy. But maybe it's
always better to build from a known HEAD (especially after we have
atomic revisions, later).
Of course, that script would still live in the tree, so you'd still
have to have a working copy. But you wouldn't have to have a
configured working copy with a Makefile.
> Further, note that changes to the dist process would require changing
> Makefile.in, then re-running configure. A plain release script is much
> cleaner :-)
Yeah; have been rediscovering that very relevant fact lately. :-)
> I've attached an example script that I use for my "edna" application. I use
> a similar one for ViewCVS.
Thanks; will examine and perhaps rework the way dist-building works.
-K
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Re: CVS update: MODIFIED: . ...
Posted by kf...@collab.net.
Ben Collins-Sussman <su...@collab.net> writes:
> We want to do this too; we talked about it for a long time. But it
> seems a waste to do so, since this script would have to be rewritten
> *after* M3 to pull the "good" list from an 'svn status' command.
>
> So I think this `make dist' rule is a temporary pre-M3 hack. After
> M3, I suspect Karl wants to write a more permanent svn-based system.
If I understand Greg's suggestion correctly, what he's talking about
is fairly independent of CVS vs SVN. It's just a matter of rewriting
a checkout command; everything else is the same.
However, we still need a configured tree around to make dist, because
we need to ship with pre-built documentation, which means running
texinfo & friends. So I'm not sure yet whether it's a win or not.
Either way, there will be some changes made to the dist system after
we switch to SVN hosting.
-K
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Re: CVS update: MODIFIED: . ...
Posted by Ben Collins-Sussman <su...@collab.net>.
Greg Stein <gs...@lyra.org> writes:
> 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.
We want to do this too; we talked about it for a long time. But it
seems a waste to do so, since this script would have to be rewritten
*after* M3 to pull the "good" list from an 'svn status' command.
So I think this `make dist' rule is a temporary pre-M3 hack. After
M3, I suspect Karl wants to write a more permanent svn-based system.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org