Date: Mon, 8 Jan 2018 15:46:10 -0500 From: James E Keenan <jkeenan@pobox.com> To: freebsd-ports@freebsd.org Subject: First time porter seeks guidance on 'make package' (as user) Message-ID: <d7b95861-868f-8287-259d-fca9da6d0431@pobox.com>
next in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format. --------------1AF3CBC12AD61C2C42CE943D Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable I am making my first attempt at constructing a FreeBSD port. The port=20 in question is for Perl extension Devel-Platform_Info=20 (http://search.cpan.org/dist/Devel-Platform-Info/).=20 Devel-Platform-Info, AFAICT, has not yet been ported and has no=20 prerequisites outside the Perl 5 core distribution. Hence, it should=20 not be difficult to port. I have constructed and submitted a port for=20 this CPAN distribution to OpenBSD; now I would like to do so as well for=20 FreeBSD. I have tried to follow the guidance in the Porters Handbook starting here= : https://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/index.= html ... particularly the discussion in Chapter 3, "Quick Porting": https://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/quick-= porting.html I have successfully tested the port with both 'portlint'=20 (https://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/testi= ng-portlint.html)=20 and 'port test'=20 (https://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/testi= ng-porttools.html). The one place where I have not gotten the desired results is found at=20 "Procedure 3.1: Recommended Test Ordering"=20 (https://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/porti= ng-testing.html).=20 Step 6 of that process is to invoke 'make package' as a regular,=20 non-root user. When I attempted to do so, I was told that I lacked=20 permission to create a directory. That didn't surprise me, since the=20 '/usr/ports/' tree has permissions 'drwxr-xr-x' and I, as a member of=20 group 'wheel', lack 'write' permission for that tree. Hence, I'm=20 puzzled by this advice: "Make sure that make package can be run as a normal user (that is, not=20 as root). If that fails, the software may need to be patched. See also=20 Section 17.18, =E2=80=9Cfakeroot=E2=80=9D and Section 17.84, =E2=80=9Cuid= fix=E2=80=9D." I installed the=20 'fakeroot' package but had no better luck when I ran 'fakeroot make=20 package' as a non-root user. 1. Can someone offer guidance as to how to proceed? 2. I found that to create/edit the Makefile and pkg-descr I had to=20 become root. That's a style of work that is contrary to my regular=20 software development practices. With some guidance from an experienced=20 OpenBSD committer I was able to learn how to prepare ports on that=20 platform without becoming root. Is there any way to do that in FreeBSD? Makefile for this port attached for reference. Thank you very much. Jim Keenan --------------1AF3CBC12AD61C2C42CE943D Content-Type: text/plain; charset=UTF-8; name="Makefile" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="Makefile" IyBDcmVhdGVkIGJ5OiBKYW1lcyBFIEtlZW5hbiA8amtlZW5hbkBjcGFuLm9yZz4KIyAkRnJl ZUJTRCQKClBPUlROQU1FPQlEZXZlbC1QbGF0Zm9ybS1JbmZvClBPUlRWRVJTSU9OPQkwLjE2 CkNBVEVHT1JJRVM9CWRldmVsIHBlcmw1Ck1BU1RFUl9TSVRFUz0JQ1BBTgpQS0dOQU1FUFJF RklYPQlwNS0KCk1BSU5UQUlORVI9CWprZWVuYW5AY3Bhbi5vcmcKQ09NTUVOVD0JVW5pZmll ZCBmcmFtZXdvcmsgZm9yIG9idGFpbmluZyBjb21tb24gcGxhdGZvcm0gbWV0YWRhdGEKCkxJ Q0VOU0U9CUFSVDIwCgpVU0VTPQkJcGVybDUKVVNFX1BFUkw1PQljb25maWd1cmUKCk9QVElP TlNfREVGSU5FPQlET0NTCgpQT1JURE9DUz0JQ2hhbmdlcyBSRUFETUUKCi5pbmNsdWRlIDxi c2QucG9ydC5vcHRpb25zLm1rPgoKcG9zdC1pbnN0YWxsOgoJJHtNS0RJUn0gJHtTVEFHRURJ Un0ke0RPQ1NESVJ9Cgkke0lOU1RBTExfREFUQX0gJHtQT1JURE9DUzpTfF58JHtXUktTUkN9 L3x9ICR7U1RBR0VESVJ9JHtET0NTRElSfQoKLmluY2x1ZGUgPGJzZC5wb3J0Lm1rPgo= --------------1AF3CBC12AD61C2C42CE943D--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?d7b95861-868f-8287-259d-fca9da6d0431>