the Fink project is an effort to port
popular Unix programs to Mac OS X
Info2: <<
Package: strings-oct%type_pkg[oct]
Version: 1.1.0
Type: oct (3.6.0 3.6.1), forge (strings)
Revision: 1
Maintainer: Alexander Hansen
# unfortunately, Homepage won't do types
Homepage: http://octave.sourceforge.net/strings/index.html
Description: String manipulation functions for Octave
DescDetail: <<
Additional string manipulation functions.
This package provides the following functions:
Search and replace:
pcregexp
Operations:
strsort
editdistance
cstrcmp
strjoin
Conversion:
base64encode
base64decode
<<
License: OSI-Approved
Source: mirror:sourceforge:octave/Octave%%20Forge%%20Packages/R2009-05-08/%type_raw[forge]-%v.tar.gz
Source-MD5: 2daa6c3a052665baf309ecbc98c42d8a
BuildDepends: <<
liboctave%type_pkg[oct]-dev,
fftw3,
hdf5.7,
libpcre1
<<
Depends: <<
octave%type_pkg[oct]-interpreter,
libpcre1-shlibs
<<
Conflicts: octave-forge
DescPackaging: <<
This package:
Listed license is GPL3+/modified BSD/public domain, so lump those together
as "OSI-Approved".
Octave Forge appears to be ditching that whole "portability" nonsense, even
using GNU tools, so hand-patch the Makefile.
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 ####
SourceDirectory: %type_pkg[forge]
PatchScript: perl -pi -e 's|mkoctfile|mkoctfile -L%p/lib -lpcre|' src/Makefile
######################################
# 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
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]
if [ $UID -ne 0 ]
then
echo "%n cannot be built with --build-as-nobody"
exit 1
fi
# 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]-%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
%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
<<