Info2: << Package: ann-oct305 Version: 1.0.2 Type: oct (3.0.5), forge (ann), gcc (4.6) Revision: 5 Maintainer: Alexander Hansen # unfortunately, Homepage won't do types Homepage: http://octave.sourceforge.net/ Description: Wrapper to the ANN library for Octave DescDetail: << The Octave-forge ANN package wraps the ANN library, which provides data structures and functions for computing exact and approximate nearest neighbors on an arbitrarily high dimensional point set. << License: GPL2 BuildDepends: << liboctave%type_pkg[oct]-gcc%type_pkg[gcc]-dev, fink-octave-scripts (>= 0.1.2), fftw3, hdf5.8-oldapi << Depends: << octave%type_pkg[oct]-interpreter, gcc%type_pkg[gcc]-shlibs << Conflicts: octave-forge Source: mirror:sourceforge:octave/%type_raw[forge]-%v.tar.gz Source-MD5: 3b383fdec459cf4f66c221e7b698aab0 PatchFile: %{ni}.patch PatchFile-MD5: a9ca472ae5f690929f403b7de7fa443b PatchScript: << %{default_script} perl -pi -e 's|\$\(MAKELIB\)|ar rcv|' src/%type_pkg[forge]/src/Makefile << NoSetCPPFLAGS: true NoSetLDFLAGS: true SetLIBRARY_PATH: /usr/X11R6/lib:%p/lib UseMaxBuildJobs: false BuildAsNobody: false CompileScript: << #!/bin/sh -ev pkgsrc=%type_raw[forge]-%v ##### Invariant stuff begins here ##### %p/share/fink-octave-scripts/octave-forge-patch.sh %type_raw[forge] %v %type_raw[oct] %b %i $pkgsrc ./octave-forge-compile.sh << InstallScript: ./octave-forge-install.sh PostInstScript: %p/share/octave/%type_raw[oct]/%type_raw[forge]/octave-forge-postinst.sh PreRmScript: %p/share/octave/%type_raw[oct]/%type_raw[forge]/octave-forge-prerm.sh DescPackaging: << This package: Rolls its own ANN (1.1.1) library. There's a newer upstream version (1.1.2), but this package wants stuff that doesn't exist in that version. 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. << DescPort:<< ann_wrap.cpp seems to need explicit #includes pointing to the ANN headers, so we patch those in. For some reason when this package reads AR from octave_config_info, it gets mangled so that the system doesn't want to execute it. We simply patch %b/src/ann/src/Makefile just to use "ar -crv" directly. << <<