the Fink project is an effort to port
popular Unix programs to Mac OS X
Info2: <<
Package: database-oct305
Version: 1.0.4
Type: oct (3.0.5), forge (database), gcc (4.6)
Revision: 14
Maintainer: Alexander Hansen
# unfortunately, Homepage won't do types
Homepage: http://octave.sourceforge.net/database/index.html
Description: Octave database interface
DescDetail: <<
These are bindings that allow SQL queries and other database operations on
postgres, mysql, sqlite [not implemented in the Fink package currently],
and standard ODBC databases from within Octave. A simplified interface that is
uniform across all database types is provided, as well as the entire C client
API for each database (libpq, libmysqlclient, etc).
The package provides the following high-level interface functions:
sql
default_db
<<
License: OSI-Approved
# All octave-forge packages have to have the following BuildDepends:
# liboctave%type_pkg[oct]-gcc%type_pkg[gcc]-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: <<
mysql-unified-dev,
unixodbc2 | unixodbc2-nox,
postgresql91-dev,
liboctave%type_pkg[oct]-gcc%type_pkg[gcc]-dev,
fftw3,
hdf5.7-oldapi,
libncurses5,
readline5
<<
Depends: <<
fftw3-shlibs,
gcc%type_pkg[gcc]-shlibs,
hdf5.7-oldapi-shlibs,
libncurses5-shlibs,
mysql-unified-shlibs,
postgresql91-shlibs,
readline5-shlibs,
unixodbc2-shlibs | unixodbc2-nox-shlibs,
octave%type_pkg[oct]-interpreter
<<
Conflicts: octave-forge
DescPackaging: <<
This package:
License is listed as BSD/GPL2, but we don't have that available.
Point to the versioned octave interpreter.
Patch so that it finds Fink's postgresql91 headers.
Disable sqlite3 build in Makeconf for now because the code is broken.
Use Fink's unixodbc2 because this package appears to be incompatible
with the builtin ODBC.
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.
<<
Source-MD5: 3de89d16ad1c5945ebcb90f8759803b0
#### Insert required changes here ####
SetCPPFLAGS: -I%p/opt/hdf5v1.6/include -I%p/opt/postgresql-9.1/include
SetLDFLAGS: -L%p/opt/hdf5v1.6/lib -L%p/opt/postgresql-9.1/lib
PatchScript: <<
perl -pi -e 's|postgresql/libpq-fe.h|libpq-fe.h|g' \
src/configure \
src/configure.base \
src/postgres.i \
src/postgres_wrap.cpp
sed -i.bak -e 's|@DEFHAVE_SQLITE3@||' \
src/Makeconf.in
<<
######################################
# 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/%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]
%p/share/octave/%type_raw[oct]/scripts/octave-forge-compile.sh %type_raw[forge]-%v
<<
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
<<