From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([209.51.188.92]:48066) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hLvYJ-0006Kl-TE for guix-patches@gnu.org; Wed, 01 May 2019 16:10:05 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hLvYI-0007YW-L3 for guix-patches@gnu.org; Wed, 01 May 2019 16:10:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:59697) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hLvYI-0007YM-HP for guix-patches@gnu.org; Wed, 01 May 2019 16:10:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1hLvYI-0006DN-8j for guix-patches@gnu.org; Wed, 01 May 2019 16:10:02 -0400 Subject: [bug#35527] [PATCH] gnu: Add nauty. Resent-Message-ID: Received: from eggs.gnu.org ([209.51.188.92]:47997) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hLvY3-0006HN-NU for guix-patches@gnu.org; Wed, 01 May 2019 16:09:49 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hLvY2-0007Oa-At for guix-patches@gnu.org; Wed, 01 May 2019 16:09:47 -0400 Received: from relay9-d.mail.gandi.net ([217.70.183.199]:52341) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1hLvY1-0007Nn-WD for guix-patches@gnu.org; Wed, 01 May 2019 16:09:46 -0400 Received: from localhost (40-67.ipv4.commingeshautdebit.fr [185.131.40.67]) (Authenticated sender: admin@nicolasgoaziou.fr) by relay9-d.mail.gandi.net (Postfix) with ESMTPSA id F0FB8FF809 for ; Wed, 1 May 2019 20:09:41 +0000 (UTC) From: Nicolas Goaziou Date: Wed, 01 May 2019 22:09:41 +0200 Message-ID: <874l6ec4xm.fsf@nicolasgoaziou.fr> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: 35527@debbugs.gnu.org --=-=-= Content-Type: text/plain Hello, The following patch adds nauty to maths.scm. Upstream doesn't provide any install target, so installation is rather rough. In particular, it creates a lot of executables. For the record, Debian prefix all of them with "nauty-" (except for the main one: "dreadnaut"). I sticked to upstream names. There is no missing module, I promise. ;) Feedback welcome. Regards, -- Nicolas Goaziou --=-=-= Content-Type: text/x-diff Content-Disposition: attachment; filename=0001-gnu-Add-nauty.patch >From 4f349819dd4492b99a044117d402983b358b2c6b Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Wed, 1 May 2019 21:58:35 +0200 Subject: [PATCH] gnu: Add nauty. * gnu/packages/maths.scm (nauty): New variable. --- gnu/packages/maths.scm | 69 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index d59028599f..8553ddab4b 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -4908,3 +4908,72 @@ coordinated fashion, as part of the Great Internet Mersenne Prime Search (GIMPS). Mlucas also includes a simple Python script for assignment management via the GIMPS project's Primenet server.") (license license:gpl2+))) + +(define-public nauty + (package + (name "nauty") + (version "2.6r11") + (source (origin + (method url-fetch) + (uri (string-append + "https://pallini.di.uniroma1.it/" + "nauty" (string-join (string-split version #\.) "") + ".tar.gz")) + (sha256 + (base32 + "05z6mk7c31j70md83396cdjmvzzip1hqb88pfszzc6k4gy8h3m2y")))) + (build-system gnu-build-system) + (outputs '("out" "lib")) + (arguments + `(#:test-target "checks" + #:phases + (modify-phases %standard-phases + ;; Default make target does not build all available + ;; executables. Create them now. + (add-after 'build 'build-extra-programs + (lambda _ + (for-each (lambda (target) (invoke "make" target)) + '("blisstog" "bliss2dre" "checks6" "sumlines")) + #t)) + ;; Upstream does not provide any install target. + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (lib-output (assoc-ref outputs "lib")) + (bin (string-append out "/bin")) + (doc (string-append out "/share/doc/nauty/")) + (include (string-append lib-output "/include/nauty")) + (lib (string-append lib-output "/lib/nauty"))) + (for-each (lambda (f) (install-file f bin)) + '("dreadnaut" "NRswitchg" "addedgeg" "amtog" "biplabg" + "blisstog" "bliss2dre" "catg" "checks6" "complg" + "converseg" "copyg" "countg" "cubhamg" "deledgeg" + "delptg" "directg" "dretodot" "dretog" "genbg" + "genbgL" "geng" "genquarticg" "genrang" "genspecialg" + "gentourng" "gentreeg" "hamheuristic" "labelg" + "linegraphg" "listg" "multig" "newedgeg" "pickg" + "planarg" "ranlabg" "shortg" "showg" "subdivideg" + "sumlines" "twohamg" "vcolg" "watercluster2")) + (for-each (lambda (f) (install-file f include)) + (find-files "." "\\.h$")) + (for-each (lambda (f) (install-file f lib)) + (find-files "." "\\.a$")) + (for-each (lambda (f) (install-file f doc)) + (append '("formats.txt" "README" "schreier.txt") + (find-files "." "\\.pdf$"))))))))) + (inputs + `(("gmp" ,gmp))) ;for sumlines + (home-page "https://pallini.di.uniroma1.it/") + (synopsis "Library for graph automorphisms") + (description "@code{nauty} (No AUTomorphisms, Yes?) is a set of +procedures for computing automorphism groups of graphs and digraphs. + +@code{nauty} computes graph information in the form of a set of +generators, the size of the group, and the orbits of the group; it can +also produce a canonical label. The @code{nauty} suite is written in +C and comes with a command-line interface, a collection of +command-line tools, and an Application Programming Interface (API). + +This package provides the static libraries required to run programs +compiled against the nauty library.") + (license license:asl2.0))) -- 2.21.0 --=-=-=--