guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] gnu: Add nlopt.


From: Ludovic Courtès
Subject: Re: [PATCH] gnu: Add nlopt.
Date: Thu, 07 Apr 2016 23:40:03 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux)

Hi,

I have it too, in a private repo.  :-)

--8<---------------cut here---------------start------------->8---
(define-public nlopt
  (package
    (name "nlopt")
    (version "2.4.2")
    (source (origin
              (method url-fetch)
              (uri (string-append "http://ab-initio.mit.edu/nlopt/nlopt-";
                                  version ".tar.gz"))
              (sha256
               (base32
                "12cfkkhcdf4zmb6h7y6qvvdvqjs2xf9sjpa3rl3bq76px4yn76c0"))))
    (build-system gnu-build-system)
    (arguments
     '(;; Shared libraries are not built by default.  They are required to
       ;; build the Guile, Octave, and Python bindings.
       #:configure-flags '("--enable-shared")

       #:phases (alist-cons-before
                 'configure 'pre-configure
                 (lambda* (#:key outputs #:allow-other-keys)
                   ;; Make sure the Scheme module refers to the library by its
                   ;; absolute file name (we cannot do that from a snippet
                   ;; because the expansion of @libdir@ contains
                   ;; ${exec_prefix}.)
                   (let ((out (assoc-ref outputs "out")))
                     (substitute* "swig/nlopt.scm.in"
                       (("libnlopt")
                        (string-append out "/lib/libnlopt")))
                     #t))
                 %standard-phases)))
    ;; TODO: Figure out which dependencies make sense here.
    (inputs `(;; ("octave" ,octave)
              ("guile" ,guile-2.0)))
    (native-inputs `(("pkg-config" ,pkg-config)))
    (home-page "http://ab-initio.mit.edu/nlopt/";)
    (synopsis "Library for nonlinear optimization")
    (description
     "NLOpt is a library for nonlinear optimization, providing a common
interface for a number of different free optimization routines available
online as well as original implementations of various other algorithms.")
    (license l:lgpl2.1+)))
--8<---------------cut here---------------end--------------->8---

The reason I did not include in Guix is because of unclear licensing on
a file.  I emailed the author in Jan. 2015 but didn’t get an answer:

--8<---------------cut here---------------start------------->8---
I’m looking at packaging NLOpt for Guix, a free software GNU/Linux
distribution.

I noticed this paragraph in luksan/COPYRIGHT:

    Subroutines PBUN, PNEW, PVAR, PSEN, Copyright ACM, 2001. The original
    versions were published in Transactions on Mathematical Software, 
    Vol.27, 2001, pp.193-213. Here are the author's modifications. They
    are posted here by permission of ACM for your personal use. Not for
    redistribution. Subroutines PLIP, PSEN, Copyright Jan Vlcek, 2007. 
    The remaining subroutines, Copyright Ladislav Luksan, 2007. Many of  
    sparse matrix modules were prepared by Miroslav Tuma.

My understanding is that these subroutines cannot be redistributed nor
modified by anyone; what do you think?

Thank you,
Ludovic.
--8<---------------cut here---------------end--------------->8---

Could you check if this is still relevant, and possibly get in touch
with them?

Thanks,
Ludo’.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]