Building jruby from web-downloaded src fails
--------------------------------------------

                 Key: JRUBY-5838
                 URL: http://jira.codehaus.org/browse/JRUBY-5838
             Project: JRuby
          Issue Type: Bug
          Components: Miscellaneous
    Affects Versions: JRuby 1.6.2
         Environment: win64/cygwin
            Reporter: Xore Ander
         Attachments: Constants.java

The ant tasks to build jruby require that the source is in a valid git 
repository, ie if the source was downloaded from the website, builds will fail
build.xml, lines 195-200, 1736-1738

In an attempt to resolve JRUBY-5837, I installed git to my system and resumed 
build attempts, but this yielded similar problems. My recommendations for this 
are slightly different:

1) Pull the web download from the website, require that source is obtained via 
git (do not like this option)
2) Bundle some good default .git configuration with the web download to enable 
these calls to succeed. (still requires git is installed on the system)
3) Remove the git dependencies in the ant build (currently my solution, by 
deleting lines 195-200 and 1734-1738) This may have some unknown (to me) effect 
based on joda-time jar not being updated
4) Have a more graceful failure case. The current failure case is 
non-intuitive. eg:

{quote}
$ ant clean && ant
Buildfile: build.xml
{quote}
...

{quote}
clean-tzdata:
     [echo] Reset joda-time jar
     [exec] fatal: Not a git repository (or any parent up to mount parent 
/cygdrive)
     [exec] Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM 
not set).
     [exec] Result: 128

BUILD SUCCESSFUL
Total time: 0 seconds
Buildfile: build.xml

init:
{quote}
...

{quote}
update-constants:
     [echo] Updating constants with tzdata version 2010k
     [exec] Result: 128
     [copy] Warning: Could not find file 
C:\[REMOVED]\jruby-1.6.2\src_gen\org\jruby\runtime\Constants.java to copy.
     [copy] Copying 1 file to C:\[REMOVED]\jruby-1.6.2\src_gen\org\jruby\runtime

_uc_internal_:
     [copy] Copying 1 file to C:\[REMOVED]\jruby-1.6.2\src_gen\org\jruby\runtime
    [javac] Compiling 1 source file to 
C:\[REMOVED]\jruby-1.6.2\build\classes\jruby
    [javac] 
C:\[REMOVED]\jruby-1.6.2\src_gen\org\jruby\runtime\Constants.java:62: unclosed 
string literal
    [javac]         REVISION = "fatal: Not a git repository (or any parent up 
to mount parent /cygdrive)
    [javac]                    ^
    [javac] 
C:\[REMOVED]\jruby-1.6.2\src_gen\org\jruby\runtime\Constants.java:63: ';' 
expected
    [javac] Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM 
not set).";
    [javac]            ^
    [javac] 
C:\[REMOVED]\jruby-1.6.2\src_gen\org\jruby\runtime\Constants.java:63: ';' 
expected
    [javac] Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM 
not set).";
    [javac]                                ^
    [javac] 
C:\[REMOVED]\jruby-1.6.2\src_gen\org\jruby\runtime\Constants.java:63: ';' 
expected
    [javac] Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM 
not set).";
    [javac]                                                                     
^
    [javac] 
C:\[REMOVED]\jruby-1.6.2\src_gen\org\jruby\runtime\Constants.java:63: not a 
statement
    [javac] Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM 
not set).";
    [javac]                                                                     
 ^
    [javac] 
C:\[REMOVED]\jruby-1.6.2\src_gen\org\jruby\runtime\Constants.java:63: ';' 
expected
    [javac] Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM 
not set).";
    [javac]                                                                     
    ^
    [javac] 
C:\[REMOVED]\jruby-1.6.2\src_gen\org\jruby\runtime\Constants.java:63: unclosed 
string literal
    [javac] Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM 
not set).";
    [javac]                                                                     
      ^
    [javac] 7 errors

BUILD FAILED
{quote}

from src_gen\org\jruby\runtime\Constants.java:
{quote}

    static \{
        // This is populated here to avoid javac propagating the value to 
consumers
        REVISION = "fatal: Not a git repository (or any parent up to mount 
parent /cygdrive)
Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).";
    \}
{quote}



-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe from this list, please visit:

    http://xircles.codehaus.org/manage_email


Reply via email to