Skip to content

pkgfmt does odd things if comment-conditionals and whitespace combine #430

@richlowe

Description

@richlowe

Merging arm64-gate to illumos-gate this morning, I hit upon changes to pkg:/system/ficl that completely mis-sorted the manifest.
I think this is because the conditions for $(i386_ONLY) are followed by spaces, and so they get sorted to the top as if they were different actions file dir etc. They shouldn't, pkgfmt should eat that whitespace or something.

I am aware that this is likely at best difficult and at worst impossible to coordinate an update to fix, given that illumos-gate enforces this and distribution-drift would be difficult to deal with, but thought it should be recorded.

for posterity, what pkgfmt does is this

#
# The default for payload-bearing actions in this package is to appear in the
# global zone only.  See the include file for greater detail, as well as
# information about overriding the defaults.
#
$(i386_ONLY) dir  path=usr/bin group=bin
$(i386_ONLY) dir  path=usr/bin/$(ARCH32) group=bin
$(i386_ONLY) file path=usr/bin/$(ARCH32)/ficl-sys group=sys mode=0555
$(i386_ONLY) file path=usr/bin/ficl-sys group=sys mode=0555
set name=pkg.fmri \
    value=pkg:/system/[email protected],$(PKGVERS_BUILTON)-$(PKGVERS_BRANCH)
set name=pkg.summary value="FICL Forth Implementation"
set name=pkg.description value="Forth Inspired Command Language"
set name=info.classification value=org.opensolaris.category.2008:System/Core
set name=variant.arch value=$(ARCH)
dir  path=usr group=sys
dir  path=usr/lib group=bin
dir  path=usr/lib/$(ARCH64) group=bin
file path=usr/lib/$(ARCH64)/libficl-sys.so.4.1.0 group=sys mode=0755
file path=usr/lib/libficl-sys.so.4.1.0 group=sys mode=0755
license lic_CDDL license=lic_CDDL
license usr/src/common/ficl/LICENSE license=usr/src/common/ficl/LICENSE

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions