FS#19975 - [makepkg] "$startdir" check (grep) may stall the package process indefinitely
Attached to Project:
Pacman
Opened by Thomas Bächler (brain0) - Friday, 25 June 2010, 13:51 GMT
Last edited by Allan McRae (Allan) - Thursday, 01 July 2010, 05:59 GMT
Opened by Thomas Bächler (brain0) - Friday, 25 June 2010, 13:51 GMT
Last edited by Allan McRae (Allan) - Thursday, 01 July 2010, 05:59 GMT
|
Details
The udev PKBUILD creates the /lib/udev/devices/ directory,
which contains /lib/udev/devices/stdin, a symlink to
/proc/self/fd/0. Grepping from /proc/self/fd/0 will hang
indefinitely.
tpowa discovered this when trying to upgrade udev: 17084 ? S+ 0:00 \_ /bin/bash -e /usr/bin/makepkg -c 20886 ? S+ 0:00 \_ /bin/sh /usr/bin/fakeroot -- /usr/bin/makepkg -F -c 20901 ? S+ 0:00 \_ /bin/bash -e /usr/bin/makepkg -F -c 21604 ? S+ 0:00 \_ grep -R /home/tobias/Arch/svn/svn-packages/udev/trunk/src /home/tobias/Arch/svn/svn-packages/udev/trunk/pkg/udev The 'grep' process blocks the packaging process. This grep is part of the new '$startdir check' introduced in 3.4.0. It now seems to be impossible to build udev without modifying makepkg (i.e., omitting that check - or is there an option?). A possible solution might be based on find $pkgdir -type f -exec grep ..., to make sure only ordinary files are checked. |
This task depends upon
Closed by Allan McRae (Allan)
Thursday, 01 July 2010, 05:59 GMT
Reason for closing: Fixed
Additional comments about closing: Git commit: http://projects.archlinux.org/pacman.git /commit/?h=maint&id=d7c98d4e
Thursday, 01 July 2010, 05:59 GMT
Reason for closing: Fixed
Additional comments about closing: Git commit: http://projects.archlinux.org/pacman.git /commit/?h=maint&id=d7c98d4e