Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

sci-libs/ipopt: Version bump to 3.12.12, EAPI 5 -> 6 #10293

Closed
wants to merge 1 commit into from

Conversation

g-braeunlich
Copy link
Contributor

Package-Manager: Portage-2.3.40, Repoman-2.3.9

Checked building everything (including test), except use flag doc (at the moment I only have a sabayon notebook. There it is very complicated to build doxygen with latex without breaking the package management).

I also noticed, that @mgorny blocked the hsl use flag.
In another PR, I will provide an updated Version of coinhsl. ipopt builds fine with this version, and I also successfully tested ipopt with hsl's ma97 solver.
Thus the block could maybe removed?

@gentoo-bot
Copy link

Copyright policy change

Please note that on 2018-09-15 Trustees have approved new Gentoo copyright policy. All contributions made to Gentoo need to follow this policy. If you include the Signed-off-by line in your commit message, you indicate that you have read the policy and agree to its terms. For more detailed explanation, please see the new Gentoo copyright policy explained article.

Pull Request assignment

Areas affected: ebuilds
Packages affected: sci-libs/ipopt

sci-libs/ipopt: @gentoo/sci

Linked bugs

No bugs to link found. If your pull request references any of the Gentoo bug reports, please add appropriate GLEP 66 tags to the commit message and request reassignment.

If you do not receive any reply to this pull request, please open or link a bug to attract the attention of maintainers.

Missing GCO sign-off

Please read the terms of Gentoo Certificate of Origin and acknowledge them by adding a sign-off to all your commits.


In order to force reassignment and/or bug reference scan, please append [please reassign] to the pull request title.

Docs: Code of ConductCopyright policy (expl.) ● DevmanualGitHub PRsProxy-maint guide

@gentoo-bot gentoo-bot added assigned PR successfully assigned to the package maintainer(s). no bug found No Bug/Closes found in the commits. no signoff One or more commits do not indicate GCO sign-off. labels Oct 29, 2018
@g-braeunlich
Copy link
Contributor Author

@SoapGentoo or @a17r : Could you have a look at this?
Maybe @mgorny too.

src_configure() {
# needed for the --with-coin-instdir
dodir /usr
local myeconfargs
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What is the reason for moving the standard args out of the nice array and regressing them with \ chars towards econf? I'd much rather see a clean econf "${myeconfargs[@]}" at the end. Also, having the related cmake arg right there is much nicer wrt the comment above.

local mumps_include="${EPREFIX}"/usr/include
! use mpi && mumps_include="${EPREFIX}/usr/include/mpiseq/"
myeconfargs+=(
--with-mumps-incdir="$mumps_include"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

how about
--with-mumps-incdir="${EPREFIX}"/usr/include$(usex mpi '' '/mpiseq')
instead?

src_install() {
default

use doc && HTML_DOCS=("${AUTOTOOLS_BUILD_DIR}/doxydocs/html/.")
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

local HTML_DOCS

default

use doc && HTML_DOCS=("${AUTOTOOLS_BUILD_DIR}/doxydocs/html/.")
use examples && DOCS+=( examples )
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

local DOCS

}

src_configure() {
# needed for the --with-coin-instdir
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

s/the //

}

src_compile() {
emake all $(use doc && echo doxydoc)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

a separate use doc && emake doxydoc would get rid of an unnecessary subshell and external command.

use examples && DOCS+=( examples )
einstalldocs

rm -rf "${ED%/}"/usr/share/coin || die
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Regarding rm -f: Do we have reason to believe that this path may not always be there? If not, would it be preferable to have the build actually fail and notify us about that circumstance?

src_install() {
default

use doc && HTML_DOCS=("${AUTOTOOLS_BUILD_DIR}/doxydocs/html/.")
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

AUTOTOOLS_BUILD_DIR is not a thing since you dropped autotools-utils, you'll have to get the path another way.

FileNotFoundError: [Errno 2] No such file or directory: b'/doxydocs/html/.'
 * ERROR: sci-libs/ipopt-3.12.11::gentoo failed (install phase):
 *   dodoc failed

@g-braeunlich
Copy link
Contributor Author

@a17r : Thank you very much for your review - everything makes totally sense to me!
Changed everything but please give me some time to test again (also changed 3.12.11 -> 3.12.12)

@g-braeunlich g-braeunlich changed the title sci-libs/ipopt: Version bump to 3.12.11, EAPI 5 -> 6 sci-libs/ipopt: Version bump to 3.12.12, EAPI 5 -> 6 Mar 4, 2019
@g-braeunlich
Copy link
Contributor Author

Tested so far:
All useflags except mpi (could not install a working mpicc so far).
This includes also hsl (currently blocked).
Not working for me: test (see log below)

Appending /home/g/.portage/g-braeunlich to PORTDIR_OVERLAY...

Existing ${T}/environment for 'ipopt-3.12.12' will be sourced. Run
'clean' to start with a fresh environment.
Checking Ipopt-3.12.12.tgz's mtime...
WORKDIR is up-to-date, keeping...
It appears that 'pretend' has already executed for 'ipopt-3.12.12'; skipping.
Remove '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/.pretended' to force pretend.
It appears that 'setup' has already executed for 'ipopt-3.12.12'; skipping.
Remove '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/.setuped' to force setup.
It appears that 'unpack' has already executed for 'ipopt-3.12.12'; skipping.
Remove '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/.unpacked' to force unpack.
It appears that 'prepare' has already executed for 'ipopt-3.12.12'; skipping.
Remove '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/.prepared' to force prepare.
It appears that 'configure' has already executed for 'ipopt-3.12.12'; skipping.
Remove '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/.configured' to force configure.
It appears that 'compile' has already executed for 'ipopt-3.12.12'; skipping.
Remove '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/.compiled' to force compile.
Test phase: sci-libs/ipopt-3.12.12
make -j9 test
Making all in src/Common
make[1]: Entering directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt/src/Common'
make all-am
make[2]: Entering directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt/src/Common'
make[2]: Leaving directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt/src/Common'
make[1]: Leaving directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt/src/Common'
Making all in src/LinAlg
make[1]: Entering directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt/src/LinAlg'
Making all in TMatrices
make[2]: Entering directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt/src/LinAlg/TMatrices'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt/src/LinAlg/TMatrices'
make[2]: Entering directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt/src/LinAlg'
make[2]: Nothing to be done for 'all-am'.
make[2]: Leaving directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt/src/LinAlg'
make[1]: Leaving directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt/src/LinAlg'
Making all in src/Algorithm
make[1]: Entering directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt/src/Algorithm'
Making all in LinearSolvers
make[2]: Entering directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt/src/Algorithm/LinearSolvers'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt/src/Algorithm/LinearSolvers'
Making all in Inexact
make[2]: Entering directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt/src/Algorithm/Inexact'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt/src/Algorithm/Inexact'
make[2]: Entering directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt/src/Algorithm'
make[2]: Nothing to be done for 'all-am'.
make[2]: Leaving directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt/src/Algorithm'
make[1]: Leaving directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt/src/Algorithm'
Making all in src/contrib/CGPenalty
make[1]: Entering directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt/src/contrib/CGPenalty'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt/src/contrib/CGPenalty'
Making all in src/contrib/LinearSolverLoader
make[1]: Entering directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt/src/contrib/LinearSolverLoader'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt/src/contrib/LinearSolverLoader'
Making all in src/Interfaces
make[1]: Entering directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt/src/Interfaces'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt/src/Interfaces'
Making all in src/Apps
make[1]: Entering directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt/src/Apps'
Making all in CUTErInterface
make[2]: Entering directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt/src/Apps/CUTErInterface'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt/src/Apps/CUTErInterface'
make[2]: Entering directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt/src/Apps'
make[2]: Nothing to be done for 'all-am'.
make[2]: Leaving directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt/src/Apps'
make[1]: Leaving directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt/src/Apps'
make[1]: Entering directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt'
make[1]: Nothing to be done for 'all-am'.
make[1]: Leaving directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt'
cd test; make test
make[1]: Entering directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt/test'
x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -Iecho . -I../src/Common -Iecho ./../src/Common -Iecho ./../src/LinAlg -Iecho ./../src/LinAlg/TMatrices -Iecho ./../src/Algorithm -Iecho ./../src/Interfaces -O2 -march=x86-64 -pipe -DIPOPT_BUILD -c -o hs071_main.o hs071_main.cpp
x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -Iecho . -I../src/Common -Iecho ./../src/Common -Iecho ./../src/LinAlg -Iecho ./../src/LinAlg/TMatrices -Iecho ./../src/Algorithm -Iecho ./../src/Interfaces -O2 -march=x86-64 -pipe -DIPOPT_BUILD -c -o hs071_nlp.o hs071_nlp.cpp
x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -Iecho . -I../src/Common -Iecho ./../src/Common -Iecho ./../src/LinAlg -Iecho ./../src/LinAlg/TMatrices -Iecho ./../src/Algorithm -Iecho ./../src/Interfaces -O2 -march=x86-64 -pipe -DIPOPT_BUILD -c hs071_c.c
ln -s ../examples/hs071_f/hs071_f.f hs071_f.f
x86_64-pc-linux-gnu-gfortran -Iecho ./../src/Interfaces -O2 -pipe -c -o hs071_f.o hs071_f.f
/bin/sh ../libtool --tag=CC --mode=link x86_64-pc-linux-gnu-gcc -O2 -march=x86-64 -pipe -DIPOPT_BUILD -Wl,--as-needed -o hs071_c hs071_c.o ../src/Interfaces/libipopt.la -lmumps_common -ldmumps -lzmumps -lsmumps -lcmumps -L/usr/lib64/lapack/reference -L/usr/lib64/blas/reference -llapack -lblas -L/usr/lib64/blas/reference -lblas -L/usr/lib64/blas/reference -lblas -lm -ldl -lstdc++ -lm
/bin/sh ../libtool --tag=F77 --mode=link x86_64-pc-linux-gnu-gfortran -Iecho ./../src/Interfaces -O2 -pipe -Wl,--as-needed -o hs071_f hs071_f.o ../src/Interfaces/libipopt.la -lmumps_common -ldmumps -lzmumps -lsmumps -lcmumps -L/usr/lib64/lapack/reference -L/usr/lib64/blas/reference -llapack -lblas -L/usr/lib64/blas/reference -lblas -L/usr/lib64/blas/reference -lblas -lm -ldl -lstdc++ -lm
mkdir .libs
x86_64-pc-linux-gnu-gcc -O2 -march=x86-64 -pipe -DIPOPT_BUILD -Wl,--as-needed -o .libs/hs071_c hs071_c.o ../src/Interfaces/.libs/libipopt.so -L/usr/lib64/lapack/reference -L/usr/lib64/blas/reference -lmumps_common -ldmumps -lzmumps -lsmumps -lcmumps /usr/lib64/lapack/reference/liblapack.so /usr/lib64/blas/reference/libblas.so -ldl -lstdc++ -lm -Wl,--rpath -Wl,/usr/lib64/lapack/reference -Wl,--rpath -Wl,/usr/lib64/blas/reference
x86_64-pc-linux-gnu-gfortran -I./../src/Interfaces -O2 -pipe -Wl,--as-needed -o .libs/hs071_f hs071_f.o ../src/Interfaces/.libs/libipopt.so -L/usr/lib64/lapack/reference -L/usr/lib64/blas/reference -lmumps_common -ldmumps -lzmumps -lsmumps -lcmumps /usr/lib64/lapack/reference/liblapack.so /usr/lib64/blas/reference/libblas.so -ldl -lstdc++ -lm -Wl,--rpath -Wl,/usr/lib64/lapack/reference -Wl,--rpath -Wl,/usr/lib64/blas/reference
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../lib64/libmumps_common.so: undefined reference to pthread_create' /usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../lib64/libmumps_common.so: undefined reference to pthread_join'
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../lib64/libmumps_common.so: undefined reference to pthread_create' /usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../lib64/libmumps_common.so: undefined reference to pthread_join'
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:432: hs071_c] Error 1
make[1]: *** Waiting for unfinished jobs....
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:438: hs071_f] Error 1
make[1]: Leaving directory '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt/test'
make: *** [Makefile:1063: unitTest] Error 2

  • ERROR: sci-libs/ipopt-3.12.12::gentoo failed (test phase):
  • emake failed
  • If you need support, post the output of emerge --info '=sci-libs/ipopt-3.12.12::gentoo',
  • the complete build log and the output of emerge -pqv '=sci-libs/ipopt-3.12.12::gentoo'.
  • The complete build log is located at '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/temp/build.log'.
  • The ebuild environment file is located at '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/temp/environment'.
  • Working directory: '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt'
  • S: '/var/calculate/tmp/portage/sci-libs/ipopt-3.12.12/work/Ipopt-3.12.12/Ipopt'

@g-braeunlich
Copy link
Contributor Author

Adding RESTRICT="test" for now.
@mgorny Please consider unblocking hsl

Signed-off-by: Gerhard Bräunlich <g.braeunlich@disroot.org>

Package-Manager: Portage-2.3.40, Repoman-2.3.9
@g-braeunlich
Copy link
Contributor Author

Also tested it with mpi now.
Had to add
mpi? ( virtual/mpi )
for the case USE="mpi -lapack"

@gentoo-repo-qa-bot
Copy link
Collaborator

Pull request CI report

Report generated at: 2019-03-10 14:20 UTC
Newest commit scanned: 646284b
Status: ✅ good

No issues found

@g-braeunlich g-braeunlich deleted the ipopt branch June 4, 2019 05:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
assigned PR successfully assigned to the package maintainer(s). no bug found No Bug/Closes found in the commits. no signoff One or more commits do not indicate GCO sign-off.
Projects
None yet
4 participants