Date: Thu, 01 Dec 2011 21:14:37 +0000 From: Matthew Seaman <m.seaman@infracaninophile.co.uk> To: Muhammad Moinur Rahman <5u623l20@gmail.com> Cc: freebsd-ports@freebsd.org Subject: Re: Porting application with RUN_DEPENDS and extra knobs Message-ID: <4ED7EE3D.8050703@infracaninophile.co.uk> In-Reply-To: <CA%2BnPUkzOrJZLCheTve5FK1%2BooJLMKmKRejHWhb_pKgca%2By4cCA@mail.gmail.com> References: <CA%2BnPUkzOrJZLCheTve5FK1%2BooJLMKmKRejHWhb_pKgca%2By4cCA@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enig47DAA2997DAF28746CA01062 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On 01/12/2011 19:25, Muhammad Moinur Rahman wrote: > I am trying to port one of our Home Brew application for FreeBSD as we = are > moving towards BSD from Linux. Now while creating the Makefile for crea= ting > a port I am in a trouble. I want to automate the full script. My > application has RUN_DEPENDS for perl. And perl should be built with > PERL_64BITINT, THREADS and USE_PERL knobs for my application to work. I= s > there any way I can force from my Makefile to build and install perl wi= th > the above mentioned knobs. >=20 > I have thought of creating a patch file and changing the knobs > in /var/db/ports/<PKG NAME>/options. But is there any official way to > handle this? The standard way of doing this is to create a slave port where you can tweak the options settings and enforce whatever you require. Compare, for example, editors/emacs and editors/emacs-nox11. Add a 'CONFLICTS' variable to prevent both the original perl port and your slave copy being installed simultaneously. You don't need to submit this new slave port to be included in the standard ports tree in order to use it with locally created ports. You can locally add a port /usr/ports/foo/bar by adding: /usr/ports/foo/Makefile.local with contents: SUBDIR +=3D bar and then refer to it in port dependencies in the usual way. If you have a bunch of local ports, you can add in a whole new category directory in a similar way by adding a /usr/ports/Makefile.local However, if you do this, be careful about how you manage synching updates to your ports tree. This sort of change (adding files) will persist across csup(1) runs, whereas editing files already part of the ports would not[*]. I think it also works with 'portsnap update' but you'll have to test to make sure. If you wanted to submit your home brew app to the ports, then it might be better to use eg. a PKGREQ script or a small snippet of perl in the Makefile to verify that perl was installed WITH_THREADED =3D yes and so forth, rather than adding a slave port. Cheers, Matthew [*] If you need to keep locally edited ports --=20 Dr Matthew J Seaman MA, D.Phil. 7 Priory Courtyard Flat 3 PGP: http://www.infracaninophile.co.uk/pgpkey Ramsgate JID: matthew@infracaninophile.co.uk Kent, CT11 9PW --------------enig47DAA2997DAF28746CA01062 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.16 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk7X7j0ACgkQ8Mjk52CukIyo3wCeO3ckwaQ9hPZzT8QP+aZuLxSn ukEAn0TIIyEaLLC/V0/yl8C8NqVIzX9/ =mfn/ -----END PGP SIGNATURE----- --------------enig47DAA2997DAF28746CA01062--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4ED7EE3D.8050703>