[ 
https://issues.apache.org/jira/browse/HADOOP-8921?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13570463#comment-13570463
 ] 

Chris Nauroth commented on HADOOP-8921:
---------------------------------------

Actually, I take back my last comment about task-controller.  It would still be 
incompatible in the sense that people running "ant package" may currently 
expect it to bundle task-controller, and the change I described would require 
them to start passing the compile.native parameter.

I am +1 for version 6 of the patch after removal of if="compile.native" from 
the task-controller target.  This is enough to get "ant compile" working on 
Mac.  We'd still need a Linux VM to run "ant package".

Does anyone think that perhaps the right thing to do is to get task-controller 
compiling on Mac?  This would be handled in a separate jira.  I've pasted the 
compilation failures below.  PATH_MAX undeclared is trivially fixed by adding 
#include <limits.h>.  The missing functions are trickier.  In my quick grep of 
the Mac header files, I didn't find any declarations for those functions.

{noformat}
     [exec] 
/Users/chris/git/hadoop-common/src/c++/task-controller/impl/task-controller.c:84:
 error: ‘PATH_MAX’ undeclared (first use in this function)
     [exec] cc1: warnings being treated as errors
     [exec] 
/Users/chris/git/hadoop-common/src/c++/task-controller/impl/task-controller.c: 
In function ‘mkdirs’:
     [exec] 
/Users/chris/git/hadoop-common/src/c++/task-controller/impl/task-controller.c:343:
 warning: implicit declaration of function ‘mkdirat’
     [exec] 
/Users/chris/git/hadoop-common/src/c++/task-controller/impl/task-controller.c:352:
 warning: implicit declaration of function ‘openat’
     [exec] 
/Users/chris/git/hadoop-common/src/c++/task-controller/impl/task-controller.c: 
In function ‘run_task_as_user’:
     [exec] 
/Users/chris/git/hadoop-common/src/c++/task-controller/impl/task-controller.c:904:
 warning: implicit declaration of function ‘fcloseall’
     [exec] make: *** [impl/task-controller.o] Error 1
{noformat}


                
> ant build.xml in branch-1 ignores -Dcompile.native
> --------------------------------------------------
>
>                 Key: HADOOP-8921
>                 URL: https://issues.apache.org/jira/browse/HADOOP-8921
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: build
>    Affects Versions: 1.2.0
>         Environment: Mac OS X 10.7.4
>            Reporter: Gopal V
>            Priority: Trivial
>              Labels: ant, autoconf, patch
>         Attachments: HADOOP-8921.4.patch, HADOOP-8921.5.patch, 
> hadoop-8921.6.patch
>
>
> ant -Dcompile.native=false still runs autoconf and libtoolize
> According to ant 1.8 manual, any <target if> conditions are checked only 
> after the dependencies are run through. The current if condition in code 
> fails to prevent the autoconf/libtool components from running.
> Fixing it by moving the if condition up into the "compile-native" target and 
> changing it to a param substitution instead of being evaluated as a condition.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to