Info2: << Package: secs2d-oct%type_pkg[oct] Version: 0.0.8 Type: oct (3.0.5 3.2.4 3.4.3 3.6.0 3.6.1 3.6.2 3.6.3 3.6.4), forge (secs2d), gcc (4.6) Revision: 15 Maintainer: Alexander Hansen # unfortunately, Homepage won't do types Homepage: http://octave.sourceforge.net/secs2d/index.html Description: 2D drift-diffusion simulator for Octave DescDetail: << A Drift-Diffusion simulator for 2d semiconductor devices. The package provides the following functions: Utilities: Ubern Ubernoulli Umediaarmonica UDXappend2Ddata UDXoutput2Ddata UDXoutput2Dtimeseries URREcyclingpattern Ucolumns Ucompmass2 Udescaling Udopdepmob Udrawedge Udriftdepmob Udriftdiffusion2 Ufielddepmob Ufvsgcurrent Ufvsgcurrent2 Ufvsgcurrent3 Uinvfermidirac Uise2pde Ujoinmeshes Umeshproperties Umsh2pdetool Umshcreatemesh Unodesonside Updegrad Updemesh Updesurf Urows Urrextrapolation Uscaling Uscharfettergummel2 Usmoothguess Ustructmesh Ustructmesh_left Ustructmesh_random Ustructmesh_right Usubdomains2 Usubmesh Utemplogm secs2d Finite Element matrix assembly functions: Udriftdiffusion Ucomplap Ucompconst Ucompmass Uscharfettergummel3 Physical constants and material properties: constants DDGOX: DDGOXddcurrent DDGOXelectron_driftdiffusion DDGOXgummelmap DDGOXhole_driftdiffusion DDGOXnlpoisson DDGOXplotresults DDGOXT: DDGOXTelectron_driftdiffusion DDGOXTgummelmap DDGOXThole_driftdiffusion METLINES: METLINEScapcomp METLINESdefinepermittivity QDDGOX: QDDGOXcompdens QDDGOXddcurrent QDDGOXgummelmap QDDGOXnlpoisson ThDDGOX: ThDDGOXMOBN0STD ThDDGOXMOBN1STD ThDDGOXMOBP0STD ThDDGOXMOBP1STD ThDDGOXTWN0STD ThDDGOXTWN1STD ThDDGOXTWP0STD ThDDGOXTWP1STD ThDDGOXddcurrent ThDDGOXelectron_driftdiffusion ThDDGOXeletiteration ThDDGOXgummelmap ThDDGOXhole_driftdiffusion ThDDGOXnlpoisson ThDDGOXthermaliteration ThDDGOXupdateelectron_temp ThDDGOXupdatehole_temp ThDDGOXupdatelattice_temp << License: GPL2+ # Most octave-forge packages have to have the following BuildDepends: # liboctave%type_pkg[oct]-gcc%type_pkg[gcc]-dev, # fftw3, # ( %type_pkg[oct] = 305 ) hdf5.8-oldapi, # ( %type_pkg[oct] != 305 ) hdf5.8 # # Packages which serve only Octave-3.0.5 or only Octave > 3.0.5 need # not use the conditional, of course. BuildDepends: << ( %type_pkg[oct] << 360 ) liboctave%type_pkg[oct]-gcc%type_pkg[gcc]-dev, ( %type_pkg[oct] >= 360 ) liboctave%type_pkg[oct]-dev, fftw3, ( %type_pkg[oct] = 305 ) hdf5.8-oldapi, ( %type_pkg[oct] != 305 ) hdf5.8 << Depends: << octave%type_pkg[oct]-interpreter, ( %type_pkg[oct] << 360 ) gcc%type_pkg[gcc]-shlibs << Recommends: dx, gmsh Conflicts: octave-forge Source-MD5: fd4d93f4d4ebed9ceae0d7aed88c18bf DescPackaging: << 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, or when the package name contains underscores. << #### Insert required changes here #### ###################################### # 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. Source: mirror:sourceforge:octave/Octave%%20Forge%%20Packages/R2009-05-08/%type_raw[forge]-%v.tar.gz NoSetCPPFLAGS: true NoSetLDFLAGS: true SetLIBRARY_PATH: /usr/X11R6/lib:%p/lib UseMaxBuildJobs: false BuildAsNobody: false CompileScript: << #!/bin/sh -ev if [ $UID -ne 0 ] then echo "%n cannot be built with --build-as-nobody" exit 1 fi 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]-%v.tar %type_raw[forge]-%v cd %b pkgsrc=%type_raw[forge]-%v.tar else pkgsrc=%type_raw[forge]-%v 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 `which xvfb-run` %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: `which xvfb-run` %p/share/octave/%type_raw[oct]/%type_raw[forge]-%v/octave-forge-prerm <<