Info2: << Package: openmpi-ext-oct%type_pkg[oct] Version: 1.0.2 Type: oct (3.2.4 3.4.3), forge (openmpi_ext) Revision: 2 Maintainer: Alexander Hansen # unfortunately, Homepage won't do types Homepage: http://octave.sourceforge.net/openmpi_ext/index.html Description: MPI functions for Octave DescDetail: << MPI functions for parallel computing using simple MPI Derived Datatypes. This package provides the following functions: MPI_Barrier MPI_Comm_Test MPI_Initialized MPI_Probe MPI_Comm_Load MPI_Finalize MPI_Iprobe MPI_Recv MPI_Comm_rank MPI_Finalized MPI_Op_Load MPI_Send MPI_Comm_size MPI_Init MPI_Op_Test MPI_Get_processor_name hello2dimmat hellosparsemat helloworld montecarlo hellocell hellostruct mc_example Pi << License: GPL2+ # All octave-forge packages have to have the following BuildDepends: # octave%type_pkg[oct]-dev | octave%type_pkg[oct]-atlas-dev, # fftw3, # ( %type_pkg[oct] = 305 ) hdf5.7-oldapi, # ( %type_pkg[oct] != 305 ) hdf5.7 # # Packages which serve only Octave-3.0.5 or only Octave > 3.0.5 need # not use the conditional, of course. BuildDepends: << liboctave%type_pkg[oct]-dev, fftw3, ( %type_pkg[oct] = 305 ) hdf5.7-oldapi, ( %type_pkg[oct] != 305 ) hdf5.7, openmpi-dev << Depends: << octave%type_pkg[oct]-interpreter, openmpi-shlibs << Conflicts: octave-forge Source: mirror:sourceforge:octave/Octave%%20Forge%%20Packages/Individual%%20Package%%20Releases/%type_raw[forge]-%v.tar.gz Source-MD5: 6fb8600eb111ffe536521ed18a305360 DescPackaging: << This package: There's no -lmpi_cxx at a point where a symbol from that library is needed, so we add this in explicitly. Common for all octave-forge packages: We read in postinst and prerm template scripts installed by octaveN and modify them to use the name of this package because Octave's package manager can't cope with non-literal arguments. The Type: forge (pkgname) is used to minimize what needs to be changed when using this .info file as a template. << #### Insert required changes here #### SourceDirectory: %type_pkg[forge] SetLIBS: -lmpi_cxx ###################################### # Do not change anything from this point down, unless absolutely necessary, # since the foo-oct%type_pkg[oct] packages are designed to be built/installed # in the same way. NoSetCPPFLAGS: true NoSetLDFLAGS: true SetLIBRARY_PATH: /usr/X11R6/lib:%p/lib SetMAKEFLAGS: -j1 CompileScript: << #!/bin/sh -ev export OCTAVE=%p/bin/octave-%type_raw[oct] # repack tarball, since octave-3.4.3 appears not to want to install # from directories if [ %type_pkg[oct] -ge 343 ] then cd .. tar -cf %type_raw[forge].tar %type_raw[forge] cd %b pkgsrc=%type_raw[forge].tar else pkgsrc=%type_raw[forge] fi %p/share/octave/%type_raw[oct]/scripts/octave-forge-compile.sh $pkgsrc << InstallScript: << #!/bin/sh -ev %p/share/octave/%type_raw[oct]/scripts/octave-forge-install.sh %type_raw[forge]-%v %i %b mkdir -p %i/share/octave/%type_raw[oct]/%type_raw[forge]-%v # copy template scripts cp %p/share/octave/%type_raw[oct]/scripts/octave-forge-prerm %p/share/octave/%type_raw[oct]/scripts/octave-forge-postinst %i/share/octave/%type_raw[oct]/%type_raw[forge]-%v cd %i/share/octave/%type_raw[oct]/%type_raw[forge]-%v sed -i -e 's/@PKGNAME@/%type_raw[forge]-%v/' octave-forge-postinst sed -i -e 's/@PKGNAME@/%type_raw[forge]/' octave-forge-prerm chmod a+x octave-forge* << PostInstScript: << if [ -s %p/var/octave/%type_raw[oct]/octave_packages ] && [ -f %p/var/octave/%type_raw[oct]/octave_packages ] then %p/share/octave/%type_raw[oct]/%type_raw[forge]-%v/octave-forge-postinst else mv %p/share/octave/%type_raw[oct]/packages/%type_raw[forge]-%v/octave_packages %p/var/octave/%type_raw[oct]/octave_packages fi << PreRmScript: %p/share/octave/%type_raw[oct]/%type_raw[forge]-%v/octave-forge-prerm <<