On 07/06/2016 23:44, Yaakov Selkowitz wrote:
On 2016-06-07 06:23, Marco Atzeri wrote:
mex are recognized and properly stripped

Package Name  | Version | Installation directory
--------------+---------+-----------------------
         tsa  |   4.4.1 | .../inst/usr/share/octave/packages/tsa-4.4.1
Fixing symlinks:
Stripping executables:
usr/lib/octave/packages/tsa-4.4.1/x86_64-unknown-cygwin-api-v50+/covm_mex.mex

usr/lib/octave/packages/tsa-4.4.1/x86_64-unknown-cygwin-api-v50+/histo_mex.mex

usr/lib/octave/packages/tsa-4.4.1/x86_64-unknown-cygwin-api-v50+/sumskipnan_mex.mex


but dependency are not catched. They should be:

$ cyg-dependency ./covm_mex.mex
/usr/bin/cygwin1.dll  =>  cygwin-2.5.1-1
/usr/bin/cyggomp-1.dll  =>  libgomp1-5.3.0-5
/usr/bin/cygoctinterp-3.dll  =>  octave-4.0.1-1

bit cygport only reports the forced one

Which should be removable...

yes, it is there by default to catch the noarch package


octave-tsa requires:  octave

That's not what I'm seeing locally:

octave-tsa requires: cygwin libgomp1 octave octave

Are you compiling this natively?

 x86_64 for x86_64


BTW, on my system, pkg build actually creates
NAME-VERSION-ARCH-API.tar.gz instead of just NAME-VERSION.tar.gz as in
the .cygport file, which necessitates a change to pkg install.  Am I
missing something here?

in the build directory, it is correct

$ find octave-tsa-4.4.1-1.x86_64/build/ -type f
octave-tsa-4.4.1-1.x86_64/build/octave_packages
octave-tsa-4.4.1-1.x86_64/build/tsa-4.4.1-x86_64-unknown-cygwin-api-v50+.tar.gz

it is the result of a change in octave dev that I backported
for other reason on 4.0.2.
I should check if the API portion was intentional or it is
a mistake.

Attached the modified cygport file to handle the new situation.
Now also cygport check is implemented.

Regards
Marco






FORGE="tsa"
NAME="octave-tsa"
VERSION=4.4.1
OV=4.4.1
RELEASE=1

CATEGORY="Math"
SUMMARY="Forge : time series analysis"
DESCRIPTION="${SUMMARY} 
Contributed functions for GNU Octave from octave.sourceforge.net"
HOMEPAGE="http://octave.sourceforge.net/";

SRC_URI="http://matzeri.altervista.org/octave-forge/${FORGE}-${PV}.tar";
SRC_DIR="tsa-${PV}"
PATCH_URI="do-octave-update.patch"

PKG_NAMES="${PN}"
octave_tsa_CONTENTS='etc/ usr/'
octave_tsa_REQUIRES="octave"

src_compile() {
        cd ${D}
        dodir /usr/share/octave/packages
        dodir /usr/lib/octave/packages
        export DL_LDFLAGS="-shared -fopenmp"

        octave-cli --eval "
        echo on
        diary ../log/diary
        more off
        pkg prefix ${D}/usr/share/octave/packages/ ${D}/usr/lib/octave/packages/
        pkg global_list  ${B}/octave_packages
        pkg build -nodeps -noauto -global -verbose ${B} 
${S}/${FORGE}-${PV}.tar.gz
        echo off
"
}

src_test() {
        cd ${D}
        dodir /usr/share/octave/packages
        dodir /usr/lib/octave/packages
        testdir="'"${FORGE}-${PV}"'"

        cd ${B}
        sed -e "2s/global_packages/local_packages/" octave_packages > 
octave_packages_local

        cd ${D}
        octave-cli --eval "
        echo on
        diary ../log/diary
        more off
        pkg local_list  ${B}/octave_packages_local
        pkg load ${FORGE}
        pkg list
        cd ${D}/usr/share/octave/packages
        __run_test_suite__ ({${testdir}}, {})
        echo off
"
        mv ${D}/usr/share/octave/packages/fntests.log ${D}/../log

}

src_install() {
        cd ${D}
        dodir /usr/share/octave/packages
        dodir /usr/lib/octave/packages
        binpkg=$(find ${B} -name "*gz")
        export DL_LDFLAGS="-shared -fopenmp"

        octave-cli --eval "
        echo on
        diary ../log/diary
        more off
        pkg prefix ${D}/usr/share/octave/packages/ ${D}/usr/lib/octave/packages/
        pkg global_list  ${B}/octave_packages
        pkg install -nodeps -noauto -global -verbose ${binpkg}
        pkg list
        echo off
"
}

Reply via email to