From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ricardo Wurmus Subject: Re: [PATCH]: gnu: shogun: Remove non-free source files. Date: Thu, 21 May 2015 11:59:00 +0200 Message-ID: References: <87a8xeqqk7.fsf@netris.org> <871tipj1xq.fsf@gnu.org> <87mw1dputa.fsf@netris.org> <87wq09wzir.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:51752) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YvNFw-0000kw-De for guix-devel@gnu.org; Thu, 21 May 2015 05:59:13 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YvNFr-000243-EN for guix-devel@gnu.org; Thu, 21 May 2015 05:59:12 -0400 In-Reply-To: <87wq09wzir.fsf@gnu.org> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: Ludovic =?utf-8?Q?Court=C3=A8s?= Cc: guix-devel --=-=-= Content-Type: text/plain Attached is a patch to remove non-free source files as well as anything in a "#ifdef USE_SVMLIGHT ... #endif" block. --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename="0001-gnu-shogun-Remove-non-free-source-files.patch" >From d409756bd2fc2db396d6257cfed42a213f6f43f6 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 8 May 2015 16:53:28 +0200 Subject: [PATCH] gnu: shogun: Remove non-free source files. * gnu/packages/bioinformatics.scm (shogun)[source]: Add snippet to remove non-free sources. --- gnu/packages/bioinformatics.scm | 36 +++++++++++++++++++++++++++++++++++- 1 file changed, 35 insertions(+), 1 deletion(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index fa7ff4c..e1dfda1 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -1605,7 +1605,41 @@ against local background noises.") "/sources/shogun-" version ".tar.bz2")) (sha256 (base32 - "159nlijnb7mnrv9za80wnm1shwvy45hgrqzn51hxy7gw4z6d6fdb")))) + "159nlijnb7mnrv9za80wnm1shwvy45hgrqzn51hxy7gw4z6d6fdb")) + (modules '((guix build utils) + (ice-9 rdelim))) + (snippet + '(begin + ;; Remove non-free sources and files referencing them + (for-each delete-file + (find-files "src/shogun/classifier/svm/" + "SVMLight\\.(cpp|h)")) + (for-each delete-file + (find-files "examples/undocumented/libshogun/" + (string-append + "(classifier_.*svmlight.*|" + "evaluation_cross_validation_locked_comparison).cpp"))) + ;; Remove non-free functions. + (for-each + (lambda (file) + (with-atomic-file-replacement file + (lambda (in out) + (let loop ((line (read-line in 'concat)) + (skipping? #f)) + (if (eof-object? line) + #t + (let ((skip-next? + (or (and skipping? + (not (string-prefix? + "#endif //USE_SVMLIGHT" line))) + (string-prefix? + "#ifdef USE_SVMLIGHT" line)))) + (when (or (not skipping?) + (and skipping? (not skip-next?))) + (display line out)) + (loop (read-line in 'concat) skip-next?))))))) + (find-files "src/shogun/kernel/" + "^Kernel\\.(cpp|h)")))))) (build-system cmake-build-system) (arguments '(#:tests? #f ;no check target -- 2.1.0 --=-=-=--