Bug 48990 - Build fails on Linux when skip.installer set to true
Summary: Build fails on Linux when skip.installer set to true
Status: RESOLVED FIXED
Alias: None
Product: Tomcat 5
Classification: Unclassified
Component: Catalina (show other bugs)
Version: 5.5.28
Hardware: PC Linux
: P2 normal (vote)
Target Milestone: ---
Assignee: Tomcat Developers Mailing List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-03-25 21:26 UTC by Henri Yandell
Modified: 2010-06-22 05:05 UTC (History)
0 users



Attachments
Alternative patch (3.10 KB, text/plain)
2010-05-24 13:26 UTC, Mark Thomas
Details
2010-06-07_tc55_bug48990.patch (3.32 KB, patch)
2010-06-06 22:24 UTC, Konstantin Kolinko
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Henri Yandell 2010-03-25 21:26:43 UTC
When building on Linux, I get the following error:

"apache-tomcat-6.0.24-src/output/dist/bin/x64 not found."

I avoid this with the following patch (using the execute.installer condition as a 'if-windows' option as is done in the 'clean' target). 


--- dist.xml            2010-01-26 05:20:44.000000000 +0000
+++ dist.xml            2010-01-26 05:21:02.000000000 +0000
@@ -419,7 +419,7 @@
   </target>

   <!-- Packages the core windows zip distros -->
-  <target name="package-winzip">
+  <target name="package-winzip" if="execute.installer">
     <fixcrlf srcdir="${tomcat.dist}" includes="*.txt,LICENSE,NOTICE" eol="crlf" encoding="ISO-8859-1" fixlast="false" />
     <fixcrlf srcdir="${tomcat.dist}/conf" eol="crlf" encoding="ISO-8859-1" fixlast="false" />


From inspection I believe the issue still applies in the 6.0 trunk and in the unreleased 7.0 build.xml file.
Comment 1 Mark Thomas 2010-03-25 21:32:33 UTC
Looks like your build environment is not set up correctly. Both the current and the previous Tomcat 6 build managers use Linux to build the releases.
Comment 2 Henri Yandell 2010-03-25 21:45:18 UTC
Reopening with better description of how to recreate the issue. I've updated the subject to better fit the issue, namely failure to build when skipping the installer.

Steps:

Download source.
Unpack.
Modify build.properties to change where downloads go.
Modify build.properties to set skip.installer to true (otherwise there is a wine error).
`ant download`
`ant`
`ant -f extras.xml`
`ant -f dist.xml`

Error:

apache-tomcat-6.0.26-src/dist.xml:454: /home/hyandell/apps/apache-tomcat-6.0.26-src/output/dist/bin/x64 not found.
Comment 3 Henri Yandell 2010-03-26 20:37:49 UTC
Noting that this is not a problem with 7.0 from trunk. Previous problems are with the official src.tar.gz downloads for 5.5.x and 6.0.x.
Comment 4 Mark Thomas 2010-05-24 13:26:19 UTC
Created attachment 25477 [details]
Alternative patch

skip.installer should do just that. No need to skip the .zip distros.
Comment 5 Mark Thomas 2010-05-24 13:28:05 UTC
Alternative patch proposed for 6.0.x
Comment 6 Henri Yandell 2010-05-26 19:20:22 UTC
With your patch (applied to 6.0.26), I get an error that it can't find the commons-daemon-1.0.1/windows/prunsrv.exe file to copy. 

Looking at the unpacked commons-daemon-1.0.1 from http://archive.apache.org/dist/commons/daemon/binaries/commons-daemon-1.0.1.tar.gz, I don't see a windows directory there.
Comment 7 Mark Thomas 2010-05-26 19:34:59 UTC
That would be because the build uses commons daemon 1.0.2
Comment 8 Henri Yandell 2010-05-26 19:49:59 UTC
Gotya. I'm still on 6.0.26 with 1.0.1, but the patch looks good from visual inspection.
Comment 9 Mark Thomas 2010-06-06 19:46:33 UTC
Fixed in 6.0.x and will be in 6.0.27 onwards
Comment 10 Konstantin Kolinko 2010-06-06 22:24:03 UTC
Created attachment 25537 [details]
2010-06-07_tc55_bug48990.patch

Looking at comment #3 and how the build file is implemented, it looks that it is a problem for 5.5 as well.

I am attaching patch that fixes this issue in Tomcat 5.5 (backport of r952023) AND introduces support for "skip.installer" property.

Defining the "skip.installer" property will allow to skip creating the installer when running Tomcat 5.5 build on Windows.
Comment 11 Konstantin Kolinko 2010-06-06 23:50:58 UTC
Testing with just "skip.installer" part of the above tc5.5 patch, I should say that I do not see any build failures.

I.e., the Unix builds of 5.5.28 should build successfully. The only thing is that zip/tar.gz files created by such build will differ with the ones created on Windows in that they do not include the following files and folders:

bin/tomcat5.exe
bin/tomcat5w.exe
bin/tcnative-1.dll
bin/i64/
bin/i64/tomcat5.exe
bin/i64/tcnative-1.dll
bin/x64/
bin/x64/tomcat5.exe
bin/x64/tcnative-1.dll

The effect of the above tc5.5 patch (attachment 25537 [details]) is that
A) it will align zip/tar.gz files created by building a release on Unix with the ones on Windows.
The ones on Unix will not omit the above said exe/dll files.
B) it will provide support for "skip.installer" property


Reopening, changing Product, Version to track it in Tomcat 5.5.
Comment 12 Konstantin Kolinko 2010-06-06 23:57:55 UTC
The patch was proposed for 5.5.
Comment 13 Mark Thomas 2010-06-22 05:05:04 UTC
This has been fixed in 5.5.x and will be included in 5.5.30 onwards.