Date: Thu, 7 Apr 2005 19:50:33 +0200 (CEST) From: Johan van Selst <johans@stack.nl> To: FreeBSD-gnats-submit@FreeBSD.org Cc: rmiya@cc.hirosaki-u.ac.jp Subject: ports/79639: biology/deft: patch for compilation on FreeBSD 5.x Message-ID: <20050407175033.AFF9A17038@mud.stack.nl> Resent-Message-ID: <200504071750.j37Ho9eX011751@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 79639 >Category: ports >Synopsis: biology/deft: patch for compilation on FreeBSD 5.x >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: update >Submitter-Id: current-users >Arrival-Date: Thu Apr 07 17:50:08 GMT 2005 >Closed-Date: >Last-Modified: >Originator: Johan van Selst >Release: FreeBSD 5.3-STABLE i386 >Organization: >Environment: System: FreeBSD mud.stack.nl 5.3-STABLE FreeBSD 5.3-STABLE #0: Mon Jan 31 22:31:14 CET 2005 root@mud.stack.nl:/usr/obj/usr/src/sys/mud i386 >Description: [Cc: maintainer, rmiya@cc.hirosaki-u.ac.jp] The used Fortran compiler (ftn77) doesn't seem to default to the correct prototypes of functions used before they're defined. This breaks the ports build of DeFT on FreeBSD 5.x machines. Fix: This only seems to be a problem in one file, so let's make sure functions here are defined before they're used. btw. With this patch the mpi.f file still shows a warning, but I'm not sure where exactly (or how to fix it). >How-To-Repeat: >Fix: Add an extra patchfile, files/patch-mpi.f: --- mpi.f.orig Thu Apr 7 19:25:41 2005 +++ mpi.f Thu Apr 7 19:25:46 2005 @@ -73,6 +73,13 @@ + subroutine icopy(ia_sum,ia,n) + implicit real*8(a-h,o-z) + integer n,ia(*),ia_sum(*) + do 1001 i=1,n + 1001 ia_sum(i)=ia(i) + return + end subroutine mpi_reduce(a,a_sum,n,ntype,mpi_sum,node,mpi_comm_world, & ierror) @@ -94,13 +101,6 @@ 1001 a_sum(i)=a(i) return end - subroutine icopy(ia_sum,ia,n) - implicit real*8(a-h,o-z) - integer n,ia(*),ia_sum(*) - do 1001 i=1,n - 1001 ia_sum(i)=ia(i) - return - end @@ -117,20 +117,6 @@ - subroutine mpi_bsend(a,n,ntype,islave,itag,mpi_comm_world,ierror) - implicit real*8(a-h,o-z) - include "params.h" - integer n,ntype,islave,itag,mpi_comm_world,ierror - common/mpii/ibuffer(nibuffer),iis,iir,irs,irr - common/mpir/buffer(nrbuffer) - if(ntype.eq.1) then - call send_buffer_real(a,n) - else - call send_buffer_integer(a,n) - endif - ierror=0 - return - end subroutine send_buffer_real(a,n) implicit real*8(a-h,o-z) include "params.h" @@ -156,11 +142,40 @@ if(iis.gt.nibuffer) stop 'out of space in mpi buffer (integers)' return end + subroutine mpi_bsend(a,n,ntype,islave,itag,mpi_comm_world,ierror) + implicit real*8(a-h,o-z) + include "params.h" + integer n,ntype,islave,itag,mpi_comm_world,ierror + common/mpii/ibuffer(nibuffer),iis,iir,irs,irr + common/mpir/buffer(nrbuffer) + if(ntype.eq.1) then + call send_buffer_real(a,n) + else + call send_buffer_integer(a,n) + endif + ierror=0 + return + end + subroutine receive_buffer_integer(ia,n) + implicit real*8(a-h,o-z) + include "params.h" + integer n,ia(*) + common/mpii/ibuffer(nibuffer),iis,iir,irs,irr + common/mpir/buffer(nrbuffer) + do 1001 i=1,n + 1001 ia(i)=ibuffer(iir+i) + iir=iir+n + if(iir.eq.iis) then + iis=0 + iir=0 + endif + return + end subroutine mpi_recv(a,n,ntype,isource,itag,mpi_comm_world,istat, & ierror) implicit real*8(a-h,o-z) @@ -189,21 +204,6 @@ if(irr.eq.irs) then irs=0 irr=0 - endif - return - end - subroutine receive_buffer_integer(ia,n) - implicit real*8(a-h,o-z) - include "params.h" - integer n,ia(*) - common/mpii/ibuffer(nibuffer),iis,iir,irs,irr - common/mpir/buffer(nrbuffer) - do 1001 i=1,n - 1001 ia(i)=ibuffer(iir+i) - iir=iir+n - if(iir.eq.iis) then - iis=0 - iir=0 endif return end >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050407175033.AFF9A17038>