[pacman-dev] [PATCH] makepkg: ensure PKGBUILD does not contain CRLF characters
dpmcgee at gmail.com
Sun Dec 7 09:35:54 EST 2008
On Sun, Dec 7, 2008 at 4:33 AM, Allan McRae <allan at archlinux.org> wrote:
> Dan McGee wrote:
>> Do a simple check before sourcing the file to ensure we are a valid bash
>> Signed-off-by: Dan McGee <dan at archlinux.org>
>> scripts/makepkg.sh.in | 6 ++++++
>> 1 files changed, 6 insertions(+), 0 deletions(-)
>> diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
>> index b889625..179746d 100644
>> --- a/scripts/makepkg.sh.in
>> +++ b/scripts/makepkg.sh.in
>> @@ -1354,6 +1354,12 @@ if [ ! -f "$BUILDSCRIPT" ]; then
>> # PKGBUILD passed through a pipe
>> + crlftest=$(file $BUILDSCRIPT | grep -F 'CRLF' || true)
>> + if [ "$crlftest" != "" ]; then
>> + error "$(gettext "%s contains CRLF characters and cannot
>> be sourced.")" "$BUILDSCRIPT"
>> + exit 1
>> + fi
>> source "$BUILDSCRIPT"
> Do you want to attempt a dos2unix there (with the error message downgraded
> to a warning) before failing?
I'm not sure everyone would have dos2unix installed, so that makes me
shy away from this a bit. In addition, I feel like actually modifying
the PKGBUILD should be a rare case. We do it in the case of VCS
PKGBUILDs, but that is it, and I'd rather not destroy someone's work.
More information about the pacman-dev