Bug 37977 - adapt build/BUILDING.txt and build.xml for svn on windows
Summary: adapt build/BUILDING.txt and build.xml for svn on windows
Status: RESOLVED FIXED
Alias: None
Product: Tomcat 5
Classification: Unclassified
Component: Unknown (show other bugs)
Version: 5.5.9
Hardware: Other other
: P2 enhancement (vote)
Target Milestone: ---
Assignee: Tomcat Developers Mailing List
URL: http://tomcat.apache.org/tomcat-5.5-d...
Keywords:
Depends on:
Blocks:
 
Reported: 2005-12-20 14:56 UTC by Ralf Hauser
Modified: 2006-12-24 09:43 UTC (History)
1 user (show)



Attachments
BUILDING.txt with new section on installing subversion (4.66 KB, text/plain)
2006-06-01 01:30 UTC, Christopher Sahnwaldt
Details
build.xml with improved exec svn task (83.54 KB, text/xml)
2006-06-01 01:35 UTC, Christopher Sahnwaldt
Details
build.xml with improved exec svn task (3.23 KB, text/xml)
2006-06-01 01:37 UTC, Christopher Sahnwaldt
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Ralf Hauser 2005-12-20 14:56:15 UTC
Tried to rebuild tomcat according to BUILDING.txt 

<<RalfCHauser@RalfHauser:~/<2>tomcat/mybuild> ant
Buildfile: build.xml

check.source:

get.source:

checkout:
     [echo] If the checkout fails, - todo -

BUILD FAILED
C:\Documents and Settings\RalfCHauser\My
Documents\psph\workspace\tomcat\mybuild\build.xml:87: The following error occur
red while executing this line:
C:\Documents and Settings\RalfCHauser\My
Documents\psph\workspace\tomcat\mybuild\build.xml:70: Execute failed: java.io.I
OException: CreateProcess: svn checkout
http://svn.apache.org/repos/asf//tomcat/current/tc5.5.x C:\Documents and Setting
s\RalfCHauser\My Documents\psph\workspace\tomcat\mybuild error=2

Total time: 0 seconds>>

1) I guess it would be good to update the BUILDING.txt to reflect the move from
CVS to SVN since it still mentions CVS.
2) I do not know a command-line svn client for windows since I use Tortoise as
per http://www.apache.org/dev/version-control.html#anon-svn

I did download the "subversion" package in cygwin and got a little bit further
<<RalfCHauser@RalfHauser:~/<2>tomcat/mybuild> ant
Buildfile: build.xml

check.source:

get.source:

checkout:
     [echo] If the checkout fails, - todo -
     [exec] svn: Can't make directory
'Documents\psph\workspace\tomcat\mybuild/tc5.5.x': No such file or directory
     [exec] Result: 1

build:

BUILD FAILED
C:\Documents and Settings\RalfCHauser\My
Documents\psph\workspace\tomcat\mybuild\build.xml:48: Basedir C:\Documents and
Settings\RalfCHauser\My Documents\psph\workspace\tomcat\mybuild\build does not exist

Total time: 39 seconds
RalfCHauser@RalfHauser:~/<2>tomcat/mybuild>
>>

So, it appears that either the build.xml should be made cygwin aware i.e.
3) a `cygpath -u ${basedir}` might help here or
4) <exec dir="${basedir}" executable="svn">
         <arg line="checkout ${svnroot}/${current.loc} ${basedir}" />
    </exec>
could be changed to 
<exec dir="${basedir}" executable="svn">
         <arg line="checkout ${svnroot}/${current.loc} . " />
    </exec>

At least, with cygwin's command line "svn checkout
http://svn.apache.org/repos/asf/tomcat/current/tc5.5.x ." it worked nicely
afterwards
Comment 1 Tim Funk 2005-12-20 15:02:29 UTC
If anything - I need to post this script on the site: (providing it still works)

http://marc.theaimsgroup.com/?l=tomcat-dev&m=112868500005136&w=2


Comment 2 Yoav Shapira 2006-04-13 19:04:34 UTC
Updated BUILDING.txt as suggested in (1) above.  Waiting for Tim or Ralf (who's
now a committer) to take further action, if any.
Comment 3 Christopher Sahnwaldt 2006-06-01 01:28:26 UTC
I ran into similar problems...

-> BUILDING.txt should contain a section on installing subversion
-> in the initial build.xml, I changed

    <exec dir="${basedir}" executable="svn">
         <arg line="checkout ${svnroot}/${current.loc} ${basedir}" />
    </exec>

to

    <exec dir="${basedir}" executable="svn" 
     inputstring="t${line.separator}" failonerror="true">
         <arg value="checkout" />
         <arg value="${svnroot}/${current.loc}" />
         <arg value="${basedir}" />
    </exec>

This fixes two problems:
(1) whitespace in the filenames is handled correctly
(2) svn temporarily accepts the self-signed certificate of svn.apache.org

With these changes, the build went just smoothly for me!
Comment 4 Christopher Sahnwaldt 2006-06-01 01:30:59 UTC
Created attachment 18381 [details]
BUILDING.txt with new section on installing subversion

based on yoavs version from 2006-04-13, added section on subversion (basically
a copy of the section on Ant)
Comment 5 Christopher Sahnwaldt 2006-06-01 01:35:09 UTC
Created attachment 18382 [details]
build.xml with improved exec svn  task

split arg line to let ant handle whitespace in file names & use a little hack
to let svn temporarily accept the certificate of svn.apache.org.
Comment 6 Christopher Sahnwaldt 2006-06-01 01:37:41 UTC
Created attachment 18383 [details]
build.xml with improved exec svn task

dammit... picked the wrong file...
Comment 7 Christopher Sahnwaldt 2006-06-01 01:49:48 UTC
two more things come to mind...

- BUILDING.txt still needs info about svn and proxies... haven't tried it, but 
http://subversion.tigris.org/faq.html#proxy should work.
- The 'Building with Eclipse' section on http://tomcat.apache.org/tomcat-5.5-
doc/building.html is very helpful. It should be clarified though that one 
*should* use the elipse workspace as ${tomcat.source}. I found the 
sentence 'Unless you thought ahead to make the ${tomcat.source} directory be 
under your Workspace folder...' rather confusing. -> Move that sentence to the 
top of the section, and make clear that ${tomcat.source} should be == Workspace 
folder.
Comment 8 Yoav Shapira 2006-12-24 09:43:08 UTC
Christian, these are great suggestions.  I've applied them all more or less. 
They're in SVN and will be included in the next Tomcat 5.5 release.  Thanks!