[Bug 191746] New: [PATCH] PORTDOCS et al. not properly expanded for ${FIND} ... -type d, missing @dirrm

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Tue Jul 8 18:43:06 UTC 2014


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=191746

            Bug ID: 191746
           Summary: [PATCH] PORTDOCS et al. not properly expanded for
                    ${FIND} ... -type d, missing @dirrm
           Product: Ports Tree
           Version: Latest
          Hardware: Any
                OS: Any
            Status: Needs Triage
          Severity: Affects Some People
          Priority: ---
         Component: Infrastructure
          Assignee: freebsd-ports-bugs at FreeBSD.org
          Reporter: mandree at FreeBSD.org

Created attachment 144521
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=144521&action=edit
patch to fix PORTDOCS/PORTEXAMPLES/PORTDATA @dirrm generation for globs in
subdirs (PORTDOCS=dir/*)

PORTDOCS/PORTEXAMPLES/PORTDATA are variables to ease installing documentation,
examples, or other port data into the ${SHAREDIR} or thereabouts.

The porter's handbook lists and example thus: 

PORTDOCS=    README.* ChangeLog docs/*

However, the add-plist-docs and related targets fail to create a @dirrm docs
entry for the .PLIST.mktmp file.

Cause is that this target necessarily expands the globs on the ${FIND} -P -d
command line, thus, causing something like /usr/bin/find -P -d
/usr/ports/some/port/work/stage/usr/local/share/doc/someport/docs/FILE1 to be
run, which will only match the "find -type d" constraint for nested
directories.

In order to catch those, we need to strip trailing components that contain glob
characters, to let FIND handle those.  The attached patch does this.
This may not work for deeply nested structures when the parents are empty, i.
e. 

PORTDOCS=file1 glob1*  deep/ly/nes/ted/glob*

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-ports-bugs mailing list