From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:48369) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dqLO2-0007tU-AQ for guix-patches@gnu.org; Fri, 08 Sep 2017 11:40:07 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dqLNy-0003xa-BZ for guix-patches@gnu.org; Fri, 08 Sep 2017 11:40:06 -0400 Received: from debbugs.gnu.org ([208.118.235.43]:47457) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dqLNy-0003xS-76 for guix-patches@gnu.org; Fri, 08 Sep 2017 11:40:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1dqLNx-0005Jo-Sr for guix-patches@gnu.org; Fri, 08 Sep 2017 11:40:01 -0400 Subject: [bug#28045] [PATCH] gnu: Add openfoam Resent-Message-ID: From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) References: <1504105724.3260.10.camel@tourbillion-technology.com> <20170906212801.4311-1-pgarlick@tourbillion-technology.com> <87r2viwwkp.fsf@gnu.org> <1504818378.3116.38.camel@tourbillion-technology.com> <87y3ppk39y.fsf@gnu.org> <1504870325.2630.39.camel@tourbillion-technology.com> Date: Fri, 08 Sep 2017 17:39:08 +0200 In-Reply-To: <1504870325.2630.39.camel@tourbillion-technology.com> (Paul Garlick's message of "Fri, 08 Sep 2017 12:32:05 +0100") Message-ID: <87shfx9p43.fsf@gnu.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: Paul Garlick Cc: 28045@debbugs.gnu.org Hi Paul, Paul Garlick skribis: >> Does it address the use case you have in mind? > > Yes, I think that both the multiple-profile solution and the 'ad-hoc' > environment will work for Guix/OpenFOAM. =C2=A0 Good! > So, continuing the 'middle road' line of thought, the 'install-dir' > variable would be modified to add a '/lib' element: > > - =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0%output "/OpenFOAM-" ,version))) > + =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0%output "/OpenFOAM-" ,version > "/lib"))) Sounds good. > You suggest adding a link between bin and lib/OpenFOAM- > 4.1/platforms/linux64GccDPInt32Opt/bin. =C2=A0What would be the best way = to > add this to the package definition? =C2=A0 Perhaps adding an extra phase at the end that simply calls =E2=80=98symlink= =E2=80=99? > There could also be a link between lib and lib/OpenFOAM- > 4.1/platforms/linux64GccDPInt32Opt/lib. Yes. > The links would allow the runpaths to be validated. =C2=A0So;=C2=A0 > > - =C2=A0 =C2=A0 =C2=A0 #:validate-runpath? #f ; '#:elf-directories' is no= t recognised > here That=E2=80=99d be great. If that phase errors out, it probably means that = the binaries won=E2=80=99t work out of the box, so it=E2=80=99s good to fix it. (BTW, please note that executables should go to bin/, libraries and other architecture-dependent files to lib/, and share/ is for architecture-independent stuff. I suppose we=E2=80=99ll only have bin/ and= lib/ for a start, that=E2=80=99s OK.) > The FOAM_INST_DIR variable would need to be updated: > > - =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(files '("."))))) > =C2=A0+ =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(files '("./lib"))))) I really dislike this FOAM_INST_DIR variable (usually packages =E2=80=9Ckno= w=E2=80=9D where they are installed and don=E2=80=99t need an extra variable for that)= , but if it has to be there, then so be it. :-) I think we should be all set? I=E2=80=99ll wait for your hopefully last pa= tch revision! Besides, for the future, if you have an opportunity to discuss these matters with upstream, I=E2=80=99d recommend suggesting the addition of a p= roper installation phase (=E2=80=9Cmake install=E2=80=9D), and also support at le= ast for an installation prefix, and ideally for more directory categories (see ). Thanks for your patience! Ludo=E2=80=99.