Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 01 Feb 1996 21:52:26 -0800
From:      John Polstra <jdp@polstra.com>
To:        freebsd-ports@freebsd.org
Subject:   pkg_create vs. my new port
Message-ID:  <199602020552.VAA04054@austin.polstra.com>

next in thread | raw e-mail | index | archive | help
I need some help to work around a bug in pkg_create that causes "make
package" to fail on a new port that I'm creating.

The port is for DEC Systems Research Center's Modula-3 system.
It's a very large system with a deep directory structure, and so
my PLIST file is large -- 2168 lines and 86125 characters.  When
I run "make package", pkg_create dies with the message "Failed to
execute tar command".  I did a ktrace and found out the reason:
argument list too long.  Well, that's no wonder, because pkg_create
puts every filename onto the tar command line, and the system limit
is 65536 characters.

I could fix pkg_create to use tar's "-T" option (get the list of files
from a file instead of from the command line), but I'm looking for an
easier work-around.  One idea I had was to use "@cwd" lines in the
PLIST, to make it smaller.  For example, there are many files whose
names all begin with "lib/m3/pkg/".  So I could bracket these lines
with:

    @cwd lib/m3/pkg
    ...
    @cwd ../../..

and eliminate that prefix from every filename, saving quite a few
characters.

But I don't think it'll work.  At the end of my PLIST, there's a
ldconfig execution:

    @exec /sbin/ldconfig -m %D/lib/m3/FreeBSD2

>From looking at the code, I'm pretty sure that %D will be replaced with
the literal text from the last @cwd, that is, "../../..".  That doesn't
sound so great.

Do any of you have any ideas about how to solve this problem?
--
   John Polstra                                       jdp@polstra.com
   John D. Polstra & Co., Inc.                Seattle, Washington USA
   "Self-knowledge is always bad news."                 -- John Barth



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199602020552.VAA04054>