Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 06 Oct 2005 16:14:12 +0200
From:      Alexander Leidinger <Alexander@Leidinger.net>
To:        Trevor Johnson <trevor@FreeBSD.org>
Cc:        cvs-ports@FreeBSD.org, portmgr@FreeBSD.org, cvs-all@FreeBSD.org, ports-committers@FreeBSD.org
Subject:   Re: cvs commit: ports/print/acroread7 Makefile
Message-ID:  <20051006161412.w5ykixx5s0sskc00@netchild.homeip.net>
In-Reply-To: <200510052317.j95NHWBa083203@repoman.freebsd.org>
References:  <200510052317.j95NHWBa083203@repoman.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Trevor Johnson <trevor@FreeBSD.org> wrote:

> trevor      2005-10-05 23:17:32 UTC
>
>  FreeBSD ports repository
>
>  Modified files:
>    print/acroread7      Makefile
>  Log:

>  Remove unneeded USE_LINUX=yes and USE_XLIB=yes, and an erroneous
>  comment about the need to run brandelf, which were added by netchild.

Acroread depends upon files which come with linux_base-X. USE_LINUX=yes adds
a dependency to it (if you don't use the default linux base you have to set
OVERRIDE_LINUX_BASE=foo in make.conf for this to work correctly). It also
uses the X11 libs, so USE_XLIB (or USE_X_PREFIX, but see below) is needed,
else the dependency list is not correct and people which install acroread as
the only linux program don't get the X11 libs (for the default linux base).
For a non-default linux base this isn't needed since you decided to include
the X11 libs into some linux_base-X ports, but the official linux base port
has to be the reference. USE_LINUX=yes also changes some defaults e.g. STRIP
and more.

So as a short description: please readd USE_LINUX and USE_XLIB (or
USE_X_PREFIX, but see below), it's needed to make sure the linux
infrastructure works as intended.

The sad thing about this part is: it's not the first time I try to explain
this to you. And as you can see from the commit logs (you removed USE_LINUX
from a lot of ports without testing it on the ports build cluster a while
ago and I readded it after testing it on the ports build cluster and a lot
of "this is still broken" mails from portmgr) portmgr agrees with me that
USE_LINUX is needed to get the dependencies right. So please tell us where I
(or someone else) need to provide a better description of some parts of the
explanation.

Technically it isn't needed to run brandelf, but to be on the safe side we
should use it. There are cases where you can shoot into your foot without a
branded binary. I didn't encountered such an edge case myself, but I
remember a case where an unbranded binary caused the system to reboot
(because it triggered the wrong syscall). Feel free to start a discussion
about the necessarity/deprecation of brandelf on -current if you think
brandelf is useless.

So in short: please add the necessary brandelf part to have a port which not
only works, but to have a port which may also play nice in edge cases.

>  Also remove his comments about the prefix being wrong.  I am changing
>  the prefix.  I think that rather than inserting such comments in a
>  port, it is better to contact the maintainer.

I did. Several times. Some of the mails where CCed to portmgr (since I don't
want to stomp on someone elses feets; I want to see nice progress in the
ports collection). Some of the replies where CCed to emulation@. So far I
got zero answers from you to every mail I send to you this year. This is sad
(for everyone except me), since I describe some fixes/improvements for some
of your linux ports which other people don't get ATM.

>  Install under LOCALBASE, rather than LINUXBASE, without registering

I know there are several people which think LOCALBASE is the right one. The
current default policy is to install ports which depend upon X11 into
X11BASE. For those which want to object here, please go out and read the
previous discussion about this topic, so far there's no resolution to this
and portmgr thinks no side was able to provide enough points to come to a
conclusion. The defacto standard ATM is to install such ports into X11BASE
and acroread should comply IMHO.

As long as acroread (an application which an ordinary user wants to use)
stays out of LINUXBASE (the place where the infrastructure for linux
applications is installed) I don't moan about using LOCALBASE.

So in short: thank you.

While I have a look at the acroread7 port: there was a discussion on ports@ a
while ago where most ports developers agreed that a port should come with a
plist instead of generating the plist from scratch at install time.
Exceptions are allowed of course, but they are limited to e.g. ports with
complex options which change the plist in a non-trivial way. So please add a
commit-time plist please. The linux-gtk port already has infrastructure to
generate a rough plist from a rpm which just needs to be refined (e.g.
removing man-pages and default directories) a little bit.

Another suggestion is to remove the kldstat check in do-build. I can't see a
call to a linux binary at compile or install time (I haven't tested this,
this is only based upon reading the Makefile, so feel free to prove me
wrong). You only need it at run time of acroread7, but it is not the
responsibility of each linux port to check for the linux support in the
kernel (the linux base does this already, so it's another point for readding
the USE_LINUX knob).

Bye,
Alexander.

-- 
http://www.Leidinger.net  Alexander @ Leidinger.net: PGP ID = B0063FE7
http://www.FreeBSD.org     netchild @ FreeBSD.org  : PGP ID = 72077137
I have already given two cousins to the war and I stand ready to
sacrifice my wife's brother.
		-- Artemus Ward





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