Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 04 Oct 2013 11:03:29 -0500
From:      Paul Schmehl <pschmehl_lists@tx.rr.com>
To:        FreeBSD Ports <freebsd-ports@freebsd.org>
Cc:        Michael Gmelin <freebsd@grem.de>
Subject:   Re: Suddenly STAGE appeared
Message-ID:  <5F769FBBEC07BCDA69ECA2EC@localhost>
In-Reply-To: <20131004163557.1354d083@bsd64.grem.de>
References:  <47D7F8B7DB949AB75F5FDE87@localhost> <20131004163557.1354d083@bsd64.grem.de>

next in thread | previous in thread | raw e-mail | index | archive | help
--On October 4, 2013 4:35:57 PM +0200 Michael Gmelin <freebsd@grem.de> 
wrote:

> On Fri, 04 Oct 2013 09:22:25 -0500
> Paul Schmehl <pschmehl_lists@tx.rr.com> wrote:
>
>> Or did I miss the announcement?
>>
>> Is there a doc that explains STAGE and how to convert a port to the
>> new system?  Why STAGE was created?  What it's purpose is?
>>
>> This is all very new to me, and I have 23 ports to worry about.
>>
>
>
> See
> http://lists.freebsd.org/pipermail/freebsd-ports-announce/2013-October/00
> 0067.html
>
> and the discussion here
> http://lists.freebsd.org/pipermail/freebsd-ports/2013-October/086346.html

Now it make sense.  I have a port that is failing to build on 10.0 because 
of CLANG.  I don't have a 10.0 install, and it builds fine with GCC.  So I 
updated the port to use USE_GCC= yes, and I was asked to convert the port 
to use STAGE.  Left me scratching my head, because this was all before the 
announcement.

And I'm having problems building the port now - and wondering if I should 
just abandon my ports because the new system is confusing to me.  All this 
transitional stuff is a lot to grasp when you've been building ports 
successfully for a while and suddenly nothing works.

For example, make makeplist doesn't actually make a pkg-plist file on my 
system.

# make makeplist
bin/sancp
etc/rc.d/sancp
etc/sancp.conf.dist

But no pkg-plist file is created.

WTH???

DOCS no longer build properly, and I have no clue why?

# make install
===>  Building package for sancp-1.6.1_5
Creating package 
/usr/ports/security/sancp-update/sancp/work/sancp-1.6.1_5.tbz
Registering depends:.
Creating bzip'd tar ball in 
'/usr/ports/security/sancp-update/sancp/work/sancp-1.6.1_5.tbz'
tar: share/doc/sancp/CHANGES: Cannot stat: No such file or directory
tar: share/doc/sancp/INSTALL: Cannot stat: No such file or directory
tar: share/doc/sancp/ISSUES: Cannot stat: No such file or directory
tar: share/doc/sancp/README: Cannot stat: No such file or directory
tar: share/doc/sancp/SETUP: Cannot stat: No such file or directory
tar: share/doc/sancp/fields.LIST: Cannot stat: No such file or directory
tar: Error exit delayed from previous errors.
pkg_create: make_dist: tar command failed with code 256
*** [do-package] Error code 1

Stop in /usr/ports/security/sancp-update/sancp.

The Makefile has this:
PORTDOCS=	CHANGES INSTALL ISSUES \
		README SETUP fields.LIST

The docs are actually in ${WRKSRC}/doc, so I tried adding doc/ and 
${WRKSRC}/doc, but neither worked.  I tried adding %%PORTDOCS%%/docname to 
pkg-plist, but that failed as well.  So now I'm at a complete loss to know 
how to get the DOCS to work.

If you're going to make changes to the ports system and expect us 
non-programmers to successfully grasp how all the changes get implemented, 
it would be very helpful to have a HOWTO page the explains the changes 
required in understandable detail.  The current page - 
<https://wiki.freebsd.org/ports/StageDir>; - is rather cryptic and open to 
interpretation.

How do I list PORTDOCS so the build nows where to find them?  Previously we 
used .if !${NOPORTDOCS} and told INSTALL to descend into the doc directory 
to fetch the docs.  Then we changed to .if ${OPTIONS:MDOCS} and did the 
same.  Now I"m told I don't need that section at all, but obviously, 
without out, the build can't figure out where the docs are so it fails.

All of this should be anticipated and documented BEFORE these changes are 
rolled out and we're required to implement them or you can expect lots of 
frustration and people dropping ports.

I get that you're trying to do things in a better, more robust way, but 
communication is key, and that communication has to be detailed and 
understandable so us dummies can implement it.

-- 
Paul Schmehl, Senior Infosec Analyst
As if it wasn't already obvious, my opinions
are my own and not those of my employer.
*******************************************
"It is as useless to argue with those who have
renounced the use of reason as to administer
medication to the dead." Thomas Jefferson
"There are some ideas so wrong that only a very
intelligent person could believe in them." George Orwell




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