Bug 239285

Summary: devel/automake: Fix 'make uninstall' for Python scripts
Product: Ports & Packages Reporter: Ting-Wei Lan <lantw44>
Component: Individual Port(s)Assignee: Tijl Coosemans <tijl>
Status: Closed FIXED    
Severity: Affects Only Me Flags: tijl: maintainer-feedback+
Priority: ---    
Version: Latest   
Hardware: Any   
OS: Any   
Attachments:
Description Flags
Fix automake bug 31222 none

Description Ting-Wei Lan 2019-07-18 16:01:35 UTC
Created attachment 205870 [details]
Fix automake bug 31222

I was making a source release for my project on FreeBSD, but I had to stop because of a 'make distcheck' error:

 ( cd '/home/lantw44/devel/ceiba-dl/ceiba-dl-0.6/_inst/bin' && rm -f ceiba-dl )
 ( cd '/home/lantw44/devel/ceiba-dl/ceiba-dl-0.6/_inst/lib/python3.6/site-packages/ceiba_dl' && rm -f __init__.py config.py helper.py vfs.py _version.py )
 ( cd '/home/lantw44/devel/ceiba-dl/ceiba-dl-0.6/_inst/lib/python3.6/site-packages/ceiba_dl' && rm -f __init__.pyc config.pyc helper.pyc vfs.pyc _version.pyc )
 ( cd '/home/lantw44/devel/ceiba-dl/ceiba-dl-0.6/_inst/lib/python3.6/site-packages/ceiba_dl' && rm -f __init__.pyo config.pyo helper.pyo vfs.pyo _version.pyo )
 ( cd '/home/lantw44/devel/ceiba-dl/ceiba-dl-0.6/_inst/lib/python3.6/site-packages/ceiba_dl/__pycache__' && rm -f __init__.*.pycn__init__.*.pyo config.*.pycnconfig.*.pyo helper.*.pycnhelper.*.pyo vfs.*.pycnvfs.*.pyo _version.*.pycn_version.*.pyo )
 ( cd '/home/lantw44/devel/ceiba-dl/ceiba-dl-0.6/_inst/lib/ceiba-dl/helpers' && rm -f 10-helper-webkitgtk )
ERROR: files left after uninstall:
./lib/python3.6/site-packages/ceiba_dl/__pycache__/__init__.cpython-36.opt-1.pyc
./lib/python3.6/site-packages/ceiba_dl/__pycache__/__init__.cpython-36.pyc
./lib/python3.6/site-packages/ceiba_dl/__pycache__/config.cpython-36.pyc
./lib/python3.6/site-packages/ceiba_dl/__pycache__/helper.cpython-36.pyc
./lib/python3.6/site-packages/ceiba_dl/__pycache__/vfs.cpython-36.pyc
./lib/python3.6/site-packages/ceiba_dl/__pycache__/_version.cpython-36.pyc
./lib/python3.6/site-packages/ceiba_dl/__pycache__/_version.cpython-36.opt-1.pyc
./lib/python3.6/site-packages/ceiba_dl/__pycache__/config.cpython-36.opt-1.pyc
./lib/python3.6/site-packages/ceiba_dl/__pycache__/helper.cpython-36.opt-1.pyc
./lib/python3.6/site-packages/ceiba_dl/__pycache__/vfs.cpython-36.opt-1.pyc
*** Error code 1

The reason of the error is that sed on FreeBSD doesn't recognize '\n' as a newline in the replacement of s command. Instead, it becomes an 'n' and causes file names to be joined with 'n', so none of pyc and pyo files are removed during uninstallation.

This bug has been fixed by upstream. Can we add it to the port?
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=31222
Comment 1 commit-hook freebsd_committer 2019-07-18 18:50:22 UTC
A commit references this bug:

Author: tijl
Date: Thu Jul 18 18:49:34 UTC 2019
New revision: 506870
URL: https://svnweb.freebsd.org/changeset/ports/506870

Log:
  Add patch with upstream commit a348d830659fffd2cfc42994524783b07e69b4b5:
  Don't use '\n' in sed substitution.  FreeBSD sed interprets it as a
  regular 'n', not as a newline.

  PR:		239285
  Submitted by:	Ting-Wei Lan <lantw44@gmail.com>

Changes:
  head/devel/automake/Makefile
  head/devel/automake/files/patch-bug31222