You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-dev@hadoop.apache.org by "Ruslan Ermilov (JIRA)" <ji...@apache.org> on 2008/09/18 14:43:44 UTC
[jira] Updated: (HADOOP-4201) [patch] native library build script
uses unportable sed(1) regexp's
[ https://issues.apache.org/jira/browse/HADOOP-4201?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ruslan Ermilov updated HADOOP-4201:
-----------------------------------
Status: Open (was: Patch Available)
> [patch] native library build script uses unportable sed(1) regexp's
> -------------------------------------------------------------------
>
> Key: HADOOP-4201
> URL: https://issues.apache.org/jira/browse/HADOOP-4201
> Project: Hadoop Core
> Issue Type: Improvement
> Components: build
> Affects Versions: 0.18.0
> Environment: FreeBSD 7.0-STABLE amd64
> Reporter: Ruslan Ermilov
>
> The native library build script uses unportable sed(1) regular expressions, making it impossible to compile a library using non-GNU sed(1).
> In particular, any POSIX-conformant sed(1) implementation will fail. The following patch has been tested to work on both Linux (Ubuntu) and FreeBSD.
> diff --exclude=CVS --exclude=.svn -rup hadoop-0.18.0~/src/native/acinclude.m4 hadoop-0.18.0/src/native/acinclude.m4
> --- hadoop-0.18.0~/src/native/acinclude.m4 2008-08-14 19:48:24.000000000 +0000
> +++ hadoop-0.18.0/src/native/acinclude.m4 2008-09-11 12:17:13.412458975 +0000
> @@ -10,9 +10,9 @@ AC_CACHE_CHECK([Checking for the 'actual
> if test -z "`${CC} ${LDFLAGS} -o conftest conftest.c -l$1 2>&1`"; then
> dnl Try objdump and ldd in that order to get the dynamic library
> if test ! -z "`which objdump | grep -v 'no objdump'`"; then
> - ac_cv_libname_$1="`objdump -p conftest | grep NEEDED | grep $1 | sed 's/\W*NEEDED\W*\(.*\)\W*$/\"\1\"/'`"
> + ac_cv_libname_$1="`objdump -p conftest | grep NEEDED | grep $1 | sed 's/[[[[:space:]]]]*NEEDED[[[[:space:]]]]*\([[[^[:space:]]]]*\)[[[[:space:]]]]*$/\
> "\1\"/'`"
> elif test ! -z "`which ldd | grep -v 'no ldd'`"; then
> - ac_cv_libname_$1="`ldd conftest | grep $1 | sed 's/^[[[^A-Za-z0-9]]]*\([[[A-Za-z0-9\.]]]*\)[[[^A-Za-z0-9]]]*=>.*$/\"\1\"/'`"
> + ac_cv_libname_$1="`ldd conftest | grep $1 | sed 's/^[[[[:space:]]]]*\([[[^[:space:]]]]*\)[[[[:space:]]]]*=>.*$/\"\1\"/'`"
> else
> AC_MSG_ERROR(Can't find either 'objdump' or 'ldd' to compute the dynamic library for '-l$1')
> fi
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.