[
https://issues.apache.org/jira/browse/AVRO-827?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13039581#comment-13039581
]
Doug Cutting commented on AVRO-827:
-----------------------------------
Avro has a dependency on bash that this patch does not remove. There are five
build.sh bash scripts currently in the Avro source tree, plus a few other bash
scripts (lang/c/version.sh, share/test/interop/test_rpc_interop.sh).
In Hadoop we found it difficult to reliably maintain shell scripts without
explicitly stating a shell variant. Someone would change things on a system
with one implementation of /bin/sh and this would not work on a system with a
different implementation of /bin/sh.
One portability problem we do have is that bash is not always installed in the
same place in all operating systems. So, instead of using '#!/bin/bash' we
might start using '#!/usr/bin/env bash' as Hadoop has done. That should make
these bash scripts work on more operating systems. Would that be acceptable?
> Use portable shell syntax for build.sh
> --------------------------------------
>
> Key: AVRO-827
> URL: https://issues.apache.org/jira/browse/AVRO-827
> Project: Avro
> Issue Type: Improvement
> Components: build
> Affects Versions: 1.6.0
> Environment: Operating systems with a POSIX compliant {{/bin/sh}}.
> Reporter: Joseph Koshy
> Labels: bash, build, posix, sh
> Attachments: build.sh.txt
>
> Original Estimate: 0.25h
> Remaining Estimate: 0.25h
>
> Avro's {{build.sh}} script cannot be executed by a POSIX compatible {{sh}}.
> {quote}
> % /bin/sh build.sh
> build.sh: 24: function: not found
> {quote}
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira