You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@depot.apache.org by Neeme Praks <ne...@apache.org> on 2004/05/14 16:13:55 UTC

how to build?

I was thinking about trying to fix those Gump failed builds and checked 
out the repository.
BTW, subversion with TortoiseSVN looks pretty slick ;-)

But I cannot figure out what I need to do in order to do full build from 
sources...

if I try to build Updater, it complains that Version is missing.

go to build Version.
Version complains that Common is missing

go to build Common.
Common builds ok, no problem there. but what is the proper way of 
pointing version build script at the freshly build common?
could copy a JAR, but there is no jar... ok, digging into build.xml, 
finding out that you have to call "ant dist-jar" in order to get the JAR 
file... not very intuitive, but ok.

built the JAR and back to Version.

figured out from build.xml that it expects to find JAR files in ./lib.
Copied the Common JAR file to version/lib.
Try to build. complains that servlet API is missing. Looked up some 
version of servlet JAR from maven repo and added to ./lib, modified 
build.properties to point to the correct filename.
Finally it builds. At least the default target also builds JAR.

Ok, going back to Updater.
trying to build: complains that "Failed to locate (or download) antlet: 
[depot-version-0.1]".
hmm. back to Version: copy contents of 
version/build/depot-version/makeantlet/depot-version to my local antlets 
repo: .antworks/antlets/depot-version-0.1
try to build again. now at least the build starts. downloads a bunch of 
dependecies, including depot-common and depot-version (wouldn't it be 
nice if it could just use the latest locally built binary?) and fails 
with ~100 compile errors.

hmm, seems that depot-common is still missing from classpath, although 
it was downloaded from repository?
    [javac] 
C:\cygwin\home\neeme\svn-src\depot\update\src\java\org\apache\depot\update\ClasspathUpdater.java:22: 
package org.apache.depot.common.util.classpath does not exist

a look in the local repository reveals the following:
cd .apache.depot/local-repository/
~ ls */*

commons-httpclient/jars:
commons-httpclient-2.0.jar

commons-logging/jars:
commons-logging-null.jar

commons-vfs/jars:
commons-vfs-20030518103800.jar

depot-common/jars:
depot-common-null.jar

depot-version/jars:
depot-version-null.jar

log4j/jars:
log4j-1.2.jar

regexp/jars:
regexp-null.jar

hmm, why nulls instead of versions? Maybe that is the problem?

ok, have to run now... maybe this was helpful and someone can help me 
out? ;-)

Rgds,
Neeme

Re: how to build?

Posted by "Adam R. B. Jack" <aj...@trysybase.com>.
I wrote:

> Since Gump is our friend, we tend to let it do building via antworks & we
> let it set the classpath.

BTW: Nick also has a public personal Gump that we use:

    http://gump.chalko.com:8080/gump-forrest/buildLog.html

I'm kicking one off now (takes about an hour) to see if the depot.xml (Gump
descriptor) change I made fixes the depot-update build.

regards,

Adam


Re: how to build?

Posted by "Adam R. B. Jack" <aj...@trysybase.com>.
You are mixing with an odd crowd, so expect odd. ;-)

Since Gump is our friend, we tend to let it do building via antworks & we
let it set the classpath. When developing we (at least I) simply have three
projects in Eclipse (becareful w/ subclipse, the Eclipse SVN plug-in, I've
had woes with it) and Eclipse figures it out. I've struggled with the ant
inside Eclipse (I suspect it is older) but command line depot runs.

Further, I've manually set the CLASSPATH to the build directories for the
three projects, then run the builds (it works). [Nick has a personal Gump
set-up that ought help him do this, but that isn't as easy for newbies as
I'd like, so I don't advise it.]

For testing, I do similarly, I have a depotenv.bat (see below). I tend to
like to use projects from CVS HEAD, but in doing so I've stumbled onto VFS
problems. You might just add jars.

I hope that helps. Thanks for digging in. Keep the feedback coming.

regards,

Adam

#
# DEPOTENV
#
set CLASSPATH=.

#set SVN_EDITOR=vi

set JUNIT_HOME=F:\apps\sforge\junit3.8.1

set WORK=F:\data\OSS

set DEPOT_COMMON=%WORK%\depot-common
set CLASSPATH=%CLASSPATH%;%DEPOT_COMMON%\build\ide\eclipse\

set DEPOT_VERSION=%WORK%\depot-version
set CLASSPATH=%CLASSPATH%;%DEPOT_VERSION%\build\ide\eclipse\

set DEPOT_UPDATE=%WORK%\depot-update
set CLASSPATH=%CLASSPATH%;%DEPOT_UPDATE%\build\ide\eclipse\

set DEPOT_VERSION=%WORK%\depot-version
set CLASSPATH=%CLASSPATH%;%DEPOT_VERSION%\build\ide\eclipse\

set CODEC=%WORK%\commons-codec
set CLASSPATH=%CLASSPATH%;%CODEC%\build\ide\eclipse\

# VFS has some woes...
#set VFS=%WORK%\commons-vfs
#set CLASSPATH=%CLASSPATH%;%VFS%\build\ide\eclipse\

set REGEXP=%WORK%\jakarta-regexp
set CLASSPATH=%CLASSPATH%;%REGEXP%\build\ide\eclipse\

set HTTP=%WORK%\commons-httpclient
set CLASSPATH=%CLASSPATH%;%HTTP%\build\ide\eclipse\

set LOGGING=%WORK%\commons-logging
set CLASSPATH=%CLASSPATH%;%LOGGING%\build\ide\eclipse\

set REGEXP=%WORK%\jakarta-regexp
set CLASSPATH=%CLASSPATH%;%REGEXP%\build\ide\eclipse\

cd %DEPOT_UPDATE%


Re: how to build?

Posted by Nick Chalko <ni...@chalko.com>.
Neeme Praks wrote:

> I was thinking about trying to fix those Gump failed builds and 
> checked out the repository.
> BTW, subversion with TortoiseSVN looks pretty slick ;-)
>
> But I cannot figure out what I need to do in order to do full build 
> from sources...
>
> if I try to build Updater, it complains that Version is missing.
>
> go to build Version.
> Version complains that Common is missing
>
> go to build Common.
> Common builds ok, no problem there. but what is the proper way of 
> pointing version build script at the freshly build common?

Right now I just copy,  we do need to fix this.

> could copy a JAR, but there is no jar... ok, digging into build.xml, 
> finding out that you have to call "ant dist-jar" in order to get the 
> JAR file... not very intuitive, but ok.

ant dist would do it.  I think we should change the default target.

>
> built the JAR and back to Version.
>
> figured out from build.xml that it expects to find JAR files in ./lib.
> Copied the Common JAR file to version/lib.

Yes that is a pain,  I need to find a good solution to that.

> Try to build. complains that servlet API is missing. Looked up some 
> version of servlet JAR from maven repo and added to ./lib, modified 
> build.properties to point to the correct filename.

I will add a build-ant-get.xml to help with this

> Finally it builds. At least the default target also builds JAR.
>
> Ok, going back to Updater.
> trying to build: complains that "Failed to locate (or download) 
> antlet: [depot-version-0.1]".
> hmm. back to Version: copy contents of 
> version/build/depot-version/makeantlet/depot-version to my local 
> antlets repo: .antworks/antlets/depot-version-0.1
> try to build again. now at least the build starts. downloads a bunch 
> of dependecies, including depot-common and depot-version (wouldn't it 
> be nice if it could just use the latest locally built binary?) and 
> fails with ~100 compile errors.
>
Sorry, I left the tree in a bad state,  I think I will reduce the use of 
build-ant-get

> hmm, seems that depot-common is still missing from classpath, although 
> it was downloaded from repository?
>    [javac] 
> C:\cygwin\home\neeme\svn-src\depot\update\src\java\org\apache\depot\update\ClasspathUpdater.java:22: 
> package org.apache.depot.common.util.classpath does not exist
>

> a look in the local repository reveals the following:
> cd .apache.depot/local-repository/
> ~ ls */*
>
>
> hmm, why nulls instead of versions? Maybe that is the problem?

Bug,  it us using the version asked for it needs to use the version 
returned.

Thanks for pointing all this out,  I will keep working on it.  Not going 
to get much time until Sat or Sunday