From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <gentoo-commits+bounces-835358-garchives=archives.gentoo.org@lists.gentoo.org>
Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80])
	by finch.gentoo.org (Postfix) with ESMTP id BCDE11384AE
	for <garchives@archives.gentoo.org>; Sun, 20 Sep 2015 11:32:05 +0000 (UTC)
Received: from pigeon.gentoo.org (localhost [127.0.0.1])
	by pigeon.gentoo.org (Postfix) with SMTP id 35412E08D0;
	Sun, 20 Sep 2015 11:32:02 +0000 (UTC)
Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183])
	(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
	(No client certificate requested)
	by pigeon.gentoo.org (Postfix) with ESMTPS id 9A8D6E08C9
	for <gentoo-commits@lists.gentoo.org>; Sun, 20 Sep 2015 11:32:01 +0000 (UTC)
Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84])
	(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
	(No client certificate requested)
	by smtp.gentoo.org (Postfix) with ESMTPS id 2868134087F
	for <gentoo-commits@lists.gentoo.org>; Sun, 20 Sep 2015 11:31:58 +0000 (UTC)
Received: from localhost.localdomain (localhost [127.0.0.1])
	by oystercatcher.gentoo.org (Postfix) with ESMTP id 827F6178
	for <gentoo-commits@lists.gentoo.org>; Sun, 20 Sep 2015 11:31:55 +0000 (UTC)
From: "Justin Lecher" <jlec@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Content-Transfer-Encoding: 8bit
Content-type: text/plain; charset=UTF-8
Reply-To: gentoo-dev@lists.gentoo.org, "Justin Lecher" <jlec@gentoo.org>
Message-ID: <1442748711.fbec1fd4628a54d93cb2fdb98b548c83ec7ea751.jlec@gentoo>
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-libs/ntl/, dev-libs/ntl/files/
X-VCS-Repository: repo/gentoo
X-VCS-Files: dev-libs/ntl/Manifest dev-libs/ntl/files/ntl-5.5.2-sage-tools.patch dev-libs/ntl/files/ntl-5.5.2-shared.patch dev-libs/ntl/files/ntl-5.5.2-singular.patch dev-libs/ntl/metadata.xml dev-libs/ntl/ntl-5.5.2.ebuild dev-libs/ntl/ntl-6.1.0.ebuild
X-VCS-Directories: dev-libs/ntl/files/ dev-libs/ntl/
X-VCS-Committer: jlec
X-VCS-Committer-Name: Justin Lecher
X-VCS-Revision: fbec1fd4628a54d93cb2fdb98b548c83ec7ea751
X-VCS-Branch: master
Date: Sun, 20 Sep 2015 11:31:55 +0000 (UTC)
Precedence: bulk
List-Post: <mailto:gentoo-commits@lists.gentoo.org>
List-Help: <mailto:gentoo-commits+help@lists.gentoo.org>
List-Unsubscribe: <mailto:gentoo-commits+unsubscribe@lists.gentoo.org>
List-Subscribe: <mailto:gentoo-commits+subscribe@lists.gentoo.org>
List-Id: Gentoo Linux mail <gentoo-commits.gentoo.org>
X-BeenThere: gentoo-commits@lists.gentoo.org
X-Archives-Salt: 3d647afd-ec75-4246-b72d-495204785662
X-Archives-Hash: a58ad3d38c22c6095248e25f4ffc7e02

commit:     fbec1fd4628a54d93cb2fdb98b548c83ec7ea751
Author:     Justin Lecher <jlec <AT> gentoo <DOT> org>
AuthorDate: Sun Sep 20 11:31:02 2015 +0000
Commit:     Justin Lecher <jlec <AT> gentoo <DOT> org>
CommitDate: Sun Sep 20 11:31:51 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fbec1fd4

Revert "dev-libs/ntl: Clean old"

This reverts commit 532a9b6c9bdc1a4011d9733c679a5b67cd0fd5c1.

Version still required

 dev-libs/ntl/Manifest                              |   1 +
 dev-libs/ntl/files/ntl-5.5.2-sage-tools.patch      |  53 +++++++
 dev-libs/ntl/files/ntl-5.5.2-shared.patch          | 166 +++++++++++++++++++++
 dev-libs/ntl/files/ntl-5.5.2-singular.patch        |  12 ++
 dev-libs/ntl/metadata.xml                          |   6 +-
 .../ntl/{ntl-6.1.0.ebuild => ntl-5.5.2.ebuild}     |  38 +++--
 dev-libs/ntl/ntl-6.1.0.ebuild                      |  28 ++--
 7 files changed, 266 insertions(+), 38 deletions(-)

diff --git a/dev-libs/ntl/Manifest b/dev-libs/ntl/Manifest
index a8c8131..bb34f48 100644
--- a/dev-libs/ntl/Manifest
+++ b/dev-libs/ntl/Manifest
@@ -1,2 +1,3 @@
+DIST ntl-5.5.2.tar.gz 707247 SHA256 ef7fe7c8b60ec6e05b2a279caad0081263f7fb68b7360120846644cde726ff56 SHA512 44892e00051ca743b1184c9ae30e62c8e2605edaa394358979ff990a535993a6f282d882871ca9ebb3c632971f806c41d9b8024c8fb2cc6fa0d22bc26c66db06 WHIRLPOOL 4587463c4b52be721a7feb164fab73341af97c6f451c0bb2fbf675503c8a5262a5d7615d628e97f082dde23ce49db0f0b314c625dae0526bb1abdfc88732896f
 DIST ntl-6.1.0.tar.gz 715439 SHA256 e16c30ceef1d47e94b8a37a8c4a1fb58729b8f8449c648e2a96280a3eecf9b6f SHA512 8c013bd4a250c8e29d57864585492be1f392c84356959d8100d5c45b420e411e5cd677524e2d50bbe265dda4c364185395780ba5d8490f6ac46da73c6a9728de WHIRLPOOL cf2a48cfe33cb58d8bda35d4a18d57a20ae23f2ba53f0f757d1bacc58ffa0bfdfd38363db38996e2e4069f5e3f2ad6a3ae9a859437a93404308512652190c765
 DIST ntl-9.3.0.tar.gz 888710 SHA256 8f31508a9176b3fc843f08468b1632017f2450677bfd5147ead5136e0f24b68f SHA512 dfb4ac7a66aaddcf5d0d0c9fcaff253b0196a9d9f727788127dd18e131528fe60dedf8bfb864503225fc5796987aec9c7019b74e0fc12cd12c20aa33a9cf9d7d WHIRLPOOL a1f7cf573d49a277f0b2f1d50d18e66ef83a54430c517fd5d3c75e800216b706e8b5ff10e6ed2dc02b6eb4f9290671b249c67f1937cced96ac987055aaa3ab99

diff --git a/dev-libs/ntl/files/ntl-5.5.2-sage-tools.patch b/dev-libs/ntl/files/ntl-5.5.2-sage-tools.patch
new file mode 100644
index 0000000..fafa973
--- /dev/null
+++ b/dev-libs/ntl/files/ntl-5.5.2-sage-tools.patch
@@ -0,0 +1,53 @@
+--- include/NTL/tools.h.orig	2008-05-06 22:14:06.000000000 +1200
++++ include/NTL/tools.h	2008-05-06 22:14:23.000000000 +1200
+@@ -249,6 +249,12 @@
+ char IntValToChar(long a);
+ 
+ 
++/*
++  This function is not present in vanilla NTL
++  See tools.c for documentation.
++ */
++void SetErrorCallbackFunction(void (*func)(const char *s, void *context), void *context);
++
+ 
+ void Error(const char *s);
+ 
+--- src/tools.c.orig	2008-05-06 22:15:32.000000000 +1200
++++ src/tools.c	2008-05-06 22:15:45.000000000 +1200
+@@ -8,8 +8,35 @@
+ NTL_START_IMPL
+ 
+ 
++/*
++   The following code differs from vanilla NTL
++
++   We add a SetErrorCallbackFunction(). This sets a global callback function _function_,
++   which gets called with parameter _context_ and an error message string whenever Error()
++   gets called.
++
++   Note that if the custom error handler *returns*, then NTL will dump the error message
++   back to stderr and abort() as it habitually does.
++
++   -- David Harvey (2008-04-12)
++*/
++
++void (*ErrorCallbackFunction)(const char*, void*) = NULL;
++void *ErrorCallbackContext = NULL;
++
++
++void SetErrorCallbackFunction(void (*function)(const char*, void*), void *context)
++{
++   ErrorCallbackFunction = function;
++   ErrorCallbackContext = context;
++}
++
++
+ void Error(const char *s)
+ {
++   if (ErrorCallbackFunction != NULL)
++      ErrorCallbackFunction(s, ErrorCallbackContext);
++
+    cerr << s << "\n";
+    abort();
+ }

diff --git a/dev-libs/ntl/files/ntl-5.5.2-shared.patch b/dev-libs/ntl/files/ntl-5.5.2-shared.patch
new file mode 100644
index 0000000..1ddd745
--- /dev/null
+++ b/dev-libs/ntl/files/ntl-5.5.2-shared.patch
@@ -0,0 +1,166 @@
+--- src/DoConfig.orig	2009-05-05 07:46:39.000000000 +0100
++++ src/DoConfig	2009-08-10 19:24:43.000000000 +0100
+@@ -25,14 +25,16 @@
+ 'LDFLAGS_CXX' => '$(LDFLAGS)',
+ 'LDLIBS'      => '-lm',
+ 'LDLIBS_CXX'  => '$(LDLIBS)',
++'PICFLAG'     => '-fPIC',
+ 'CPPFLAGS'    => '',
+ 
+-'DEF_PREFIX'  => '/usr/local',
++'DEF_PREFIX'  => '/usr',
+ 
+ 'PREFIX'      => '$(DEF_PREFIX)',
+ 'LIBDIR'      => '$(PREFIX)/lib',
+ 'INCLUDEDIR'  => '$(PREFIX)/include',
+ 'DOCDIR'      => '$(PREFIX)/share/doc',
++'SHMAKE'      => 'non-gld',
+ 
+ 'GMP_PREFIX'  => '$(DEF_PREFIX)',
+ 'GMP_INCDIR'  => '$(GMP_PREFIX)/include',
+@@ -87,11 +89,6 @@
+ 
+ foreach $arg (@ARGV) {
+ 
+-   if ($arg =~ '-h|help|-help|--help') {
+-      system("more ../doc/config.txt");
+-      exit;
+-   }
+-
+    if (($name, $val) = ($arg =~ /(.*?)=(.*)/)) {
+       
+       if (exists($MakeFlag{$name}) && ($val =~ 'on|off')) {
+
+
+
+--- src/mfile.orig	2009-05-05 07:46:39.000000000 +0100
++++ src/mfile	2009-08-10 20:31:36.000000000 +0100
+@@ -141,6 +146,16 @@
+ WIZARD=@{WIZARD}
+ # Set to off if you want to bypass the wizard; otherwise, set to on.
+ 
++###############################################################
++#
++# New addition for shared library building. With gcc you need to
++# choose the Position Indepent Code flag. You have a choice of 
++# -fpic better code but in rare case not available (ppc)
++# -fPIC slightly slower code but guaranted to work anywhere.
++#
++###############################################################
++
++PICFLAG=@{PICFLAG}
+ 
+ #################################################################
+ #
+@@ -173,6 +188,8 @@
+ 
+ OBJ=$(O19)
+ 
++SHOBJ=$(subst .o,.lo,$(OBJ))
++
+ # library source files
+ 
+ 
+@@ -320,7 +356,7 @@
+ LINK = $(CC) $(NTL_INCLUDE) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS)
+ LINK_CXX = $(CXX) $(NTL_INCLUDE) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS_CXX)
+ 
+-
++.SUFFIXES: .lo
+ 
+ # 'make all' does a complete make, including all setup.
+ # It also creates the file 'all', which means you should
+@@ -328,11 +364,11 @@
+ # again.
+ 
+ all:
+-	make setup1
+-	make setup2
+-	make setup3
+-	make setup4
+-	make ntl.a
++	$(MAKE) setup1
++	$(MAKE) setup2
++	$(MAKE) setup3
++	$(MAKE) setup4
++	$(MAKE) ntl.a
+ 	touch all
+ 
+ 
+@@ -378,18 +414,31 @@
+ lip.o:	lip.c g_lip_impl.h c_lip_impl.h lip_gmp_aux_impl.h
+ 	$(LCOMP) $(COMPILE) $(GMP_OPT_INCDIR) lip.c
+ 
++lip.lo: lip.c g_lip_impl.h c_lip_impl.h lip_gmp_aux_impl.h
++	$(LCOMP) $(COMPILE) $(PICFLAG) $(GMP_INCDIR) lip.c -o lip.lo
++
++
++
+ ctools.o:	ctools.c
+ 	$(LCOMP) $(COMPILE) ctools.c
+ 
++ctools.lo: 	 ctools.c
++	$(LCOMP) $(COMPILE) $(PICFLAG) ctools.c -o ctools.lo
++
+ 
+ GetTime.o: GetTime.c 
+ 	$(LCOMP) $(COMPILE) GetTime.c
+ 
+-
++GetTime.lo: GetTime.c 
++	$(LCOMP) $(COMPILE) $(PICFLAG) GetTime.c -o GetTime.lo
+ 
+ .c.o: 
+ 	$(LCOMP) $(COMPILE_CXX) $(GF2X_OPT_INCDIR) $<
+ 
++.c.lo: 
++	$(LCOMP) $(COMPILE_CXX) $(PICFLAG) $(GF2X_OPT_INCDIR) -o $@ $<
++
++
+ .c: 
+ @{LSTAT}	$(LINK_CXX) -o $@ $< ntl.a $(GMP_OPT_LIBDIR) $(GMP_OPT_LIB) $(GF2X_OPT_LIBDIR) $(GF2X_OPT_LIB) $(LDLIBS_CXX) #LSTAT
+ @{LSHAR}	$(LIBTOOL) --mode=link $(LINK_CXX) -o $@ $< libntl.la #LSHAR
+@@ -403,7 +452,7 @@
+ 
+ check:
+ 	sh RemoveProg $(PROGS)
+-	make QuickTest
++	$(MAKE) QuickTest
+ 	./QuickTest
+ 	sh RemoveProg QuickTest
+ 	sh TestScript
+@@ -460,19 +509,18 @@
+ #
+ #################################################################
+ 
+-clobber:	
++clobber:	clean
+ 	rm -f ntl.a mach_desc.h ../include/NTL/mach_desc.h  GetTime.c 
+ 	rm -f lip_gmp_aux_impl.h ../include/NTL/gmp_aux.h
+-	sh RemoveProg $(PROGS) MakeDesc TestGetTime gen_lip_gmp_aux gen_gmp_aux
+-	rm -f *.o
+-	rm -rf small
++	sh RemoveProg $(PROGS)
++	rm -f libntl*.so*
+ 	rm -f cfileout mfileout
+ 	rm -rf .libs *.lo libntl.la
+ 	rm -f all
+ 
+ clean:
+ 	sh RemoveProg MakeDesc TestGetTime gen_lip_gmp_aux gen_gmp_aux
+-	rm -f *.o 
++	rm -f *.o  *.lo
+ 	rm -rf small
+ @{LSHAR}	- $(LIBTOOL) --mode=clean rm -f libntl.la *.lo #LSHAR
+ 
+@@ -549,3 +597,10 @@
+ 
+ 
+ 
++sharedso: DIRNAME $(SHOBJ)
++	 $(LINK_CXX) $(PICFLAG) -shared -Wl,-soname,lib`cat DIRNAME`.so -o lib`cat DIRNAME`.so $(SHOBJ) $(GMP_OPT_LIBDIR) $(GMP_OPT_LIB) $(GF2X_OPT_LIBDIR) $(GF2X_OPT_LIB)
++	 ln -s lib`cat DIRNAME`.so libntl.so
++
++shareddylib: DIRNAME $(SHOBJ)
++	 $(LINK_CXX) $(PICFLAG) -dynamiclib -install_name $(LIBDIR)/lib`cat DIRNAME`.dylib -o lib`cat DIRNAME`.dylib $(SHOBJ) $(GMP_OPT_LIBDIR) $(GMP_OPT_LIB) $(GF2X_OPT_LIBDIR) $(GF2X_OPT_LIB)
++	 ln -s lib`cat DIRNAME`.dylib libntl.dylib

diff --git a/dev-libs/ntl/files/ntl-5.5.2-singular.patch b/dev-libs/ntl/files/ntl-5.5.2-singular.patch
new file mode 100644
index 0000000..9f0d131
--- /dev/null
+++ b/dev-libs/ntl/files/ntl-5.5.2-singular.patch
@@ -0,0 +1,12 @@
+--- include/NTL/new.h.orig	2008-05-06 21:56:16.000000000 +1200
++++ include/NTL/new.h	2008-05-06 21:56:33.000000000 +1200
+@@ -12,7 +12,8 @@
+ 
+ #include <new>
+ 
+-#define NTL_NEW_OP new (std::nothrow)
++// uncommenting std::nothrow makes this ntl work properly with Singular
++#define NTL_NEW_OP new //(std::nothrow) 
+ 
+ 
+ #else

diff --git a/dev-libs/ntl/metadata.xml b/dev-libs/ntl/metadata.xml
index b3a0b3a..480588c 100644
--- a/dev-libs/ntl/metadata.xml
+++ b/dev-libs/ntl/metadata.xml
@@ -1,9 +1,9 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
 <pkgmetadata>
-  <herd>sci-mathematics</herd>
-  <herd>cpp</herd>
-  <longdescription lang="en">
+<herd>sci-mathematics</herd>
+<herd>cpp</herd>
+<longdescription lang="en">
   NTL is a high-performance, portable C++ library providing data
   structures and algorithms for manipulating signed, arbitrary length
   integers, and for vectors, matrices, and polynomials over the

diff --git a/dev-libs/ntl/ntl-6.1.0.ebuild b/dev-libs/ntl/ntl-5.5.2.ebuild
similarity index 64%
copy from dev-libs/ntl/ntl-6.1.0.ebuild
copy to dev-libs/ntl/ntl-5.5.2.ebuild
index 09dfcc9..a25ddcf 100644
--- a/dev-libs/ntl/ntl-6.1.0.ebuild
+++ b/dev-libs/ntl/ntl-5.5.2.ebuild
@@ -1,9 +1,8 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2011 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 # $Id$
 
-EAPI=5
-
+EAPI=3
 inherit toolchain-funcs eutils multilib flag-o-matic
 
 DESCRIPTION="High-performance and portable Number Theory C++ library"
@@ -12,11 +11,10 @@ SRC_URI="http://www.shoup.net/ntl/${P}.tar.gz"
 
 LICENSE="GPL-2"
 SLOT="0"
-KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x64-macos"
+KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux ~ppc-macos"
 IUSE="doc static-libs test"
 
-RDEPEND="
-	>=dev-libs/gmp-4.3:0=
+RDEPEND=">=dev-libs/gmp-4.3
 	>=dev-libs/gf2x-0.9"
 DEPEND="${RDEPEND}
 	dev-lang/perl"
@@ -26,13 +24,13 @@ S="${WORKDIR}/${P}/src"
 src_prepare() {
 	# fix parallel make
 	sed -i -e "s/make/make ${MAKEOPTS}/g" WizardAux || die
-	cd .. || die
+	cd ..
 	# enable compatibility with singular
-	epatch "$FILESDIR/${PN}-6.0.0-singular.patch"
+	epatch "$FILESDIR/${P}-singular.patch"
 	# implement a call back framework (submitted upstream)
-	epatch "$FILESDIR/${PN}-6.0.0-sage-tools.patch"
+	epatch "$FILESDIR/${P}-sage-tools.patch"
 	# sanitize the makefile and allow the building of shared library
-	epatch "$FILESDIR/${PN}-5.5.2-shared-r1.patch"
+	epatch "$FILESDIR/${P}-shared.patch"
 	replace-flags -O[3-9] -O2
 }
 
@@ -48,30 +46,30 @@ src_configure() {
 
 src_compile() {
 	# split the targets to allow parallel make to run properly
-	emake setup1 setup2
-	emake setup3
+	emake setup1 setup2 || die "emake setup failed"
+	emake setup3 || die "emake setup failed"
 	sh Wizard on || die "Tuning wizard failed"
 	if use static-libs || use test; then
-		emake ntl.a
+		emake ntl.a  || die "emake static failed"
 	fi
 	local trg=so
 	[[ ${CHOST} == *-darwin* ]] && trg=dylib
-	emake shared${trg}
+	emake shared${trg} || die "emake shared failed"
 }
 
 src_install() {
 	if use static-libs; then
-		newlib.a ntl.a libntl.a
+		newlib.a ntl.a libntl.a || die "installation of static library failed"
 	fi
-	dolib.so lib*$(get_libname)
+	dolib.so lib*$(get_libname) || die "installation of shared library failed"
 
-	cd .. || die
+	cd ..
 	insinto /usr/include
-	doins -r include/NTL
+	doins -r include/NTL || die "installation of the headers failed"
 
 	dodoc README
 	if use doc ; then
-		dodoc doc/*.txt
-		dohtml doc/*
+		dodoc doc/*.txt || die
+		dohtml doc/* || die
 	fi
 }

diff --git a/dev-libs/ntl/ntl-6.1.0.ebuild b/dev-libs/ntl/ntl-6.1.0.ebuild
index 09dfcc9..dfaa592 100644
--- a/dev-libs/ntl/ntl-6.1.0.ebuild
+++ b/dev-libs/ntl/ntl-6.1.0.ebuild
@@ -1,9 +1,8 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2014 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 # $Id$
 
 EAPI=5
-
 inherit toolchain-funcs eutils multilib flag-o-matic
 
 DESCRIPTION="High-performance and portable Number Theory C++ library"
@@ -15,8 +14,7 @@ SLOT="0"
 KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x64-macos"
 IUSE="doc static-libs test"
 
-RDEPEND="
-	>=dev-libs/gmp-4.3:0=
+RDEPEND=">=dev-libs/gmp-4.3
 	>=dev-libs/gf2x-0.9"
 DEPEND="${RDEPEND}
 	dev-lang/perl"
@@ -26,7 +24,7 @@ S="${WORKDIR}/${P}/src"
 src_prepare() {
 	# fix parallel make
 	sed -i -e "s/make/make ${MAKEOPTS}/g" WizardAux || die
-	cd .. || die
+	cd ..
 	# enable compatibility with singular
 	epatch "$FILESDIR/${PN}-6.0.0-singular.patch"
 	# implement a call back framework (submitted upstream)
@@ -48,30 +46,30 @@ src_configure() {
 
 src_compile() {
 	# split the targets to allow parallel make to run properly
-	emake setup1 setup2
-	emake setup3
+	emake setup1 setup2 || die "emake setup failed"
+	emake setup3 || die "emake setup failed"
 	sh Wizard on || die "Tuning wizard failed"
 	if use static-libs || use test; then
-		emake ntl.a
+		emake ntl.a  || die "emake static failed"
 	fi
 	local trg=so
 	[[ ${CHOST} == *-darwin* ]] && trg=dylib
-	emake shared${trg}
+	emake shared${trg} || die "emake shared failed"
 }
 
 src_install() {
 	if use static-libs; then
-		newlib.a ntl.a libntl.a
+		newlib.a ntl.a libntl.a || die "installation of static library failed"
 	fi
-	dolib.so lib*$(get_libname)
+	dolib.so lib*$(get_libname) || die "installation of shared library failed"
 
-	cd .. || die
+	cd ..
 	insinto /usr/include
-	doins -r include/NTL
+	doins -r include/NTL || die "installation of the headers failed"
 
 	dodoc README
 	if use doc ; then
-		dodoc doc/*.txt
-		dohtml doc/*
+		dodoc doc/*.txt || die
+		dohtml doc/* || die
 	fi
 }