Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 02 Dec 2005 14:28:27 +0100
From:      Alexander Leidinger <Alexander@Leidinger.net>
To:        Jean-Yves Lefort <jylefort@FreeBSD.org>
Cc:        emulation@FreeBSD.org
Subject:   Re: cvs commit: ports/audio/linux-openal bsd.linux.mk
Message-ID:  <20051202142827.2s3y42ss8w0o0g0o@netchild.homeip.net>
In-Reply-To: <20051202121534.44c2c7be.jylefort@FreeBSD.org>
References:  <200511261918.jAQJIp91001719@repoman.freebsd.org> <20051201152026.lxwvpjokc0sw0okc@netchild.homeip.net> <20051202121534.44c2c7be.jylefort@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Jean-Yves Lefort <jylefort@FreeBSD.org> wrote:

>> - install-time generated plists are evil (as per discussion on
>>    ports@ a while ago (and as of very recent experience with the
>>    linux ports), so the pre-install target should be removed and
>>    a real plist should be generated), have a look at the linux-gtk
>>    Makefile for a target which generates an initial plist (needs
>>    to be modified a little bit afterwards)
>
> So we still don't agree on this. I guess we never will. :(

I don't object to autogenerated lists, I object to not commit the plist to
the ports tree. Add a target, e.g. "new-plist", which generates a new plist
in the directory of the port, and I don't object (have a look at
x11-toolkits/linux-gtk/Makefile).

We have several linux ports which contain empty directories. If port A and
the dependency port B both contain the same empty directory in the RPM, both
plists will contain a "@dirrm" for this. This is wrong and pointyhat will
complain. You also need a "@exec mkdir" for such an empty directory, else
the package will not generate it. While it doesn't matter for pointyhat if
the second mkdir is there or not, ideally the directory should only be
crated once. From my pragmatic point of view: I don't care for the
superflous mkdir, but I care about the rmdir. I don't want to get bombarded
with YAPHR mails again for those errors.

Another class of errors are the locale directories. Not every locale directoy
is created by linux_base. linux-glib2 has to create some of them. linux-gtk2
uses some of those newly created ones. Those directories should not be
removed by linux-gtk2. Some other ports may use those directories too, but
some of them may not depend upon linx-glib2. The current workaround ist to
remove the locale directories if they are empty in every port. It works (the
pragmatic solution) without YAPHR mails, but it's not clean. The linux-gtk2
port should not contain the "rmdir || true" parts for them.

>> - it should be installed into PORTSDIR/Mk, so that other port can
>>    use it
>
> I agree, but I don't think that I have the right to (nor that it is
> good to) add files to Mk/ without portmgr reviewal.
>
> I had planned to contact emulation@ and discuss the steps needed to
> move the file to Mk/ and have it pulled in from bsd.port.mk (via a
> USE_LINUX_RPM knob, or something). Glad to see that you read
> cvs-ports. :)

I suggest:
- ask portmgr if it is ok to commit the .mk file (not included by
   bsd.port.mk)
- commit it if approved
- convert some ports to use it
- be happe when everything works
- write a patch for bsd.port.mk (USE_LINUX_RPM) and let portmgr
   run an experimental ports build
- when portmgr committed the patch convert some ports to use it
- be happy when everything works
- convert the rest
- sit back and enjoy^w^w^w^wtackle another problem

>> - does the ppc have a linuxolator?
>
> I'm not sure (I guess not). I'll remove the powerpc stuff if someone
> confirms that there's no linux emulation on powerpc.

AFAIK ony amd64, alpha and i386 have a linuxolator.

I suggest to let the .mk part intact, maybe it motivates someone to write
some code for those other architectures. Just remove the already committed
.ppc files in the ports tree.

>> - why do you use different ways of specifying the paths in DESCR
>>    and MD5_FILE?
>> - why do you specify DESCR at all?
>
> The idea is to use the FreeBSD native port's pkg-descr.

I don't think this is good. I think the descr should mention that the ports
provide the linux versions of the port.

> I don't know what to do next. I can file a PR for inclusion in Mk/,

An suggestion is already above.

> but it'd feature my own plist generator. Directions are welcome.

I hope we can meet in the middle and agree on the semi-automatic plist
generator. A new-plist target allows you to be lazy (since a maintainer is
supposed to test the port anyway, I don't think it's to much work to type
"make new-plist"... or "make new-plist && mv pkg-plist.new pkg-plist", see
linux-gtk/Makefile), while it allows those people which don't trust the
automatic plist generator to write their own plists. It also allows to look
up the contents of the port without a need to install it. And we're able to
answer questions like "which port installs file X". So we get the good
features of both worlds, don't you think?

Bye,
Alexander.

-- 
http://www.Leidinger.net  Alexander @ Leidinger.net: PGP ID = B0063FE7
http://www.FreeBSD.org     netchild @ FreeBSD.org  : PGP ID = 72077137
Let the worthy citizens of Chicago get their liquor the best way
they can. I'm sick of the job.  It's a thankless one and full of grief.
		-- Capone





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