Info2: <<
Package: nan%type_pkg[-blas]-oct%type_pkg[oct]
Version: 2.5.9
Type: oct (3.8.2), forge (nan), -blas (-atlas -ref .), gcc (5), lapack (3.5.0)
Revision: 2

Maintainer: Alexander Hansen <alexkhansen@users.sourceforge.net>
# unfortunately, Homepage won't do types
Homepage: http://octave.sourceforge.net/nan/index.html 
Description: Missing value statistical toolbox for Octave
DescDetail: <<
A statistics and machine learning toolbox for Octave for data with and without
missing values.
This package provides the following additional functions:
        coefficient_of_variation
        geomean
        meansq
        skewness
        covm
        cor
        cov
        corrcoef
        harmmean
        median
        statistic
        detrend
        kurtosis
        moment
        std
        mad
        naninsttest
        nantest
        nansum
        nanstd
        nanconv
        nanfft
        nanfilter
        nanfilter1uc
        normpdf
        normcdf
        norminv
        meandev
        percentile
        quantile
        rankcorr
        ranks
        rms
        sumskipnan
        var
        mean
        sem
        spearman
        trimean
        tpdf
        tcdf
        tinv
        zscore
        flag_implicit_significance
        xcovf
        train_sc
        test_sc
        xval
        classify
        train_lda_sparse
        decovm
        gscatter
        mahal
        cdfplot
        hist2res
        ttest
        ttest2
        xptopen
        bland_altman
        cumsumskipnan
        range
<<
License: GPL3+

BuildDepends: <<
  (%type_raw[-blas] = -atlas)	atlas (>=3.10.1-1),
  (%type_raw[-blas] = -atlas)	liboctave%type_pkg[oct]-newatlas-dev,
  (%type_raw[-blas] = .)		liboctave%type_pkg[oct]-accelerate-dev, 
  (%type_raw[-blas] = -ref)		lapack%type_pkg[lapack],
  (%type_raw[-blas] = -ref)		liboctave%type_pkg[oct]-ref-dev,
  gcc%type_pkg[gcc]-compiler,
  fink-octave-scripts (>= 0.3.1-1),
  fftw3, 
  hdf5.9
  <<
Depends: << 
  (%type_raw[-blas] = -atlas) 	atlas-shlibs (>=3.10.1-1),
  (%type_raw[-blas] = -atlas)	octave%type_pkg[oct]-interpreter-newatlas, 
  (%type_raw[-blas] = .)		octave%type_pkg[oct]-interpreter-accelerate,
  (%type_raw[-blas] = -ref)		lapack%type_pkg[lapack]-shlibs,
  (%type_raw[-blas] = -ref)		octave%type_pkg[oct]-interpreter-ref,
  gcc%type_pkg[gcc]-shlibs
  <<
Conflicts: <<
	octave-forge,
	octave-forge-%type_raw[forge] (<< 1.0.7-999),
	%type_raw[forge]-atlas-oct%type_pkg[oct],
	%type_raw[forge]-ref-oct%type_pkg[oct],
	%type_raw[forge]-oct%type_pkg[oct]
<<
Replaces: <<
	octave-forge-%type_raw[forge] (<< 1.0.7-999),	
	%type_raw[forge]-atlas-oct%type_pkg[oct],
	%type_raw[forge]-ref-oct%type_pkg[oct],
	%type_raw[forge]-oct%type_pkg[oct]
<<

Source: mirror:sourceforge:octave/%type_raw[forge]-%v.tar.gz
Source-Checksum: SHA256(3259c594117c7b9761c070b7f0438271076e83e9b8623e518ea145a11481196d)
SourceDirectory: NaN

PatchFile: %{Ni}.patch
PatchFile-MD5: 5297b13e0a16577b9e584dbe54ea3ad9
PatchScript: <<
	#!/bin/sh -ev
	# create temporary oct-cc and oct-cxx scripts pointing to gcc4x
	mkdir bin
	ln -s %p/bin/gcc-fsf-%type_raw[gcc] bin/oct-cc 
	ln -s %p/bin/g++-fsf-%type_raw[gcc] bin/oct-cxx
	chmod a+x bin/oct*
	export PATH="%b/bin:$PATH"
	perl -pi -e 's,(-lgomp),-L%p/lib/gcc%type_raw[gcc]/lib \1,g' src/Makefile
	sed -e 's|@FINKPREFIX@|%p|g' \
		-e 's|@OCTVERSION@|%type_raw[oct]|g' \
		-e "s|@BLAS_LIBS@|$(mkoctfile -p BLAS_LIBS)|" \
		-e 's|@GCC@|%type_raw[gcc]|' \
			%{PatchFile} | patch -p1
	# Use tweaked header to allow use of gcc49.
	perl -p -e 's/#include "mexproto.h"//' %p/include/octave-%type_raw[oct]/octave/mex.h > src/mex.h
	perl -pi -e "s/(extern \"C\")/#include \"mexproto.h\"\n\1/" src/mex.h
<<

SetLIBS: -L%p/lib/gcc%type_raw[gcc]/lib/
NoSetCPPFLAGS: true
NoSetLDFLAGS: true
UseMaxBuildJobs: false
BuildAsNobody: false

CompileScript: <<
#!/bin/sh -ev

pkgsrc=NaN

export PATH="%b/bin:$PATH"

%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:
Patch to Use BLAS_LIBS output from mkoctfile rather than just -lblas.

Requires tweaking to use gcc49-compiler, which is required for libgomp.

Common for all octave-forge packages:
Preinst and postinst scripts are dynamically set up via
%p/share/fink-octave-scripts/octave-forge-patch.sh 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.
<<
<<