public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Sebastien Fabbro" <bicatali@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] proj/sci:master commit in: dev-lang/julia/
Date: Wed, 17 Jul 2013 17:59:18 +0000 (UTC)	[thread overview]
Message-ID: <1374083937.cf87a8f5940a064d968a411bc54102c98ee9ab27.bicatali@gentoo> (raw)

commit:     cf87a8f5940a064d968a411bc54102c98ee9ab27
Author:     Sébastien Fabbro <bicatali <AT> gentoo <DOT> org>
AuthorDate: Wed Jul 17 17:58:57 2013 +0000
Commit:     Sebastien Fabbro <bicatali <AT> gentoo <DOT> org>
CommitDate: Wed Jul 17 17:58:57 2013 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=cf87a8f5

dev-lang/julia: Small fixes and cleanup, use system patchelf

Package-Manager: portage-2.2.01.22124-prefix

---
 dev-lang/julia/ChangeLog         |  5 ++-
 dev-lang/julia/julia-9999.ebuild | 78 ++++++++++++++++++++++------------------
 dev-lang/julia/metadata.xml      | 26 +++++++-------
 3 files changed, 61 insertions(+), 48 deletions(-)

diff --git a/dev-lang/julia/ChangeLog b/dev-lang/julia/ChangeLog
index be886b3..623d31a 100644
--- a/dev-lang/julia/ChangeLog
+++ b/dev-lang/julia/ChangeLog
@@ -2,6 +2,10 @@
 # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
 # $Header: $
 
+  17 Jul 2013; Sébastien Fabbro <bicatali@gentoo.org> julia-9999.ebuild,
+  metadata.xml:
+  dev-lang/julia: Small fixes and cleanup, use system patchelf
+
   14 Jul 2013; James Cloos <cloos@jhcloos.com> julia-9999.ebuild:
   Julia uses submodules, so set EGIT_HAS_SUBMODULES=yes
   
@@ -18,4 +22,3 @@
   +metadata.xml:
   Initial import. Ebuild written with help from Nicolas Bigaouette and 
   Sébastien Fabbro.
-

diff --git a/dev-lang/julia/julia-9999.ebuild b/dev-lang/julia/julia-9999.ebuild
index 23d97d8..ca85ef1 100644
--- a/dev-lang/julia/julia-9999.ebuild
+++ b/dev-lang/julia/julia-9999.ebuild
@@ -9,68 +9,82 @@ EGIT_HAS_SUBMODULES=yes
 
 inherit git-2 elisp-common eutils multilib
 
-DESCRIPTION="The Julia Language: a fresh approach to technical computing"
+DESCRIPTION="High-performance programming language for technical computing"
 HOMEPAGE="http://julialang.org/"
 SRC_URI=""
 
-LICENSE="GPL-2"
+LICENSE="MIT"
 SLOT="0"
 KEYWORDS=""
 IUSE="doc emacs"
 
-RDEPEND=">=sys-devel/llvm-3.0
-	sys-libs/readline
-	emacs? ( !app-emacs/ess )
-	>=sci-libs/suitesparse-4.0
-	sci-libs/arpack
-	sci-libs/fftw
+RDEPEND="
+	dev-libs/double-conversion
 	dev-libs/gmp
-	>=dev-libs/double-conversion-1.1.1
-	>=sys-libs/libunwind-1.1
 	dev-libs/libpcre
+	dev-util/patchelf
+	sci-libs/arpack
+	sci-libs/fftw
 	sci-libs/openlibm
+	>=sci-libs/suitesparse-4.0
 	sci-mathematics/glpk
+	>=sys-devel/llvm-3.0
+	>=sys-libs/libunwind-1.1
+	sys-libs/readline
 	sys-libs/zlib
 	virtual/blas
-	virtual/lapack"
+	virtual/lapack
+	emacs? ( !app-emacs/ess )"
 
 DEPEND="${RDEPEND}
 	virtual/pkgconfig"
 
 src_prepare() {
-	#epatch "${FILESDIR}/julia-nopatchelf.patch"
-	# Folder /usr/include/suitesparse does not exists, everything should be in /usr/include
-	sed -e "s|SUITESPARSE_INC = -I /usr/include/suitesparse|SUITESPARSE_INC = |g" \
-	-i deps/Makefile
-
-	blasname=$($(tc-getPKG_CONFIG) --libs blas | \
+	# /usr/include/suitesparse is for debian only
+	# respect prefix, flags
+	sed -i \
+		-e 's|^\(SUITESPARSE_INC\s*=\).*||g' \
+		-e 's|/usr/bin/||g' \
+		-e "s|/usr/include|${EROOT%/}/usr/include|g" \
+		-e "s|-O3|${CFLAGS}|g" \
+		deps/Makefile || die
+
+	# mangle Make.inc for system libraries
+	# do not set the RPATH
+	local blasname=$($(tc-getPKG_CONFIG) --libs blas | \
 		sed -e "s/-l\([a-z0-9]*\).*/lib\1/")
-	lapackname=$($(tc-getPKG_CONFIG) --libs lapack | \
+	local lapackname=$($(tc-getPKG_CONFIG) --libs lapack | \
 		sed -e "s/-l\([a-z0-9]*\).*/lib\1/")
 
 	sed -i \
-			-e 's|\(USE_SYSTEM_.*\)=.*|\1=1|g' \
-			-e 's|\(USE_SYSTEM_LIBUV\)=.*|\1=0|g' \
-			-e 's|\(USE_SYSTEM_LIBM\)=.*|\1=0|g' \
-			-e "s|-lblas|$($(tc-getPKG_CONFIG) --libs blas)|" \
-			-e "s|-llapack|$($(tc-getPKG_CONFIG) --libs lapack)|" \
-			-e "s|liblapack|${lapackname}|" \
-			-e "s|libblas|${blasname}|" Make.inc || die
-
-	# do not set the RPATH	
-	sed -e "/RPATH = /d" -e "/RPATH_ORIGIN = /d" -i Make.inc
+		-e 's|\(USE_QUIET\s*\)=.*|\1=0|g' \
+		-e 's|\(USE_SYSTEM_.*\)=.*|\1=1|g' \
+		-e 's|\(USE_SYSTEM_LIBUV\)=.*|\1=0|g' \
+		-e 's|\(USE_SYSTEM_LIBM\)=.*|\1=0|g' \
+		-e "s|-lblas|$($(tc-getPKG_CONFIG) --libs blas)|" \
+		-e "s|-llapack|$($(tc-getPKG_CONFIG) --libs lapack)|" \
+		-e "s|liblapack|${lapackname}|" \
+		-e "s|libblas|${blasname}|" \
+		-e 's|\(JULIA_EXECUTABLE = \)\($(JULIAHOME)/julia\)|\1 LD_LIBRARY_PATH=$(BUILD)/lib \2|' \
+		-e "s|-O3|${CFLAGS}|g" \
+		Make.inc || die
 }
 
 src_compile() {
+	emake cleanall
 	emake
 	use doc && emake -C doc html
 	use emacs && elisp-compile contrib/julia-mode.el
 }
 
+src_test() {
+	emake test
+}
+
 src_install() {
 	emake install PREFIX="${D}/usr"
 	cat > 99julia <<-EOF
-		LDPATH=/usr/$(get_libdir)/julia
+		LDPATH=${EROOT%/}/usr/$(get_libdir)/julia
 	EOF
 	doenvd 99julia
 
@@ -78,7 +92,7 @@ src_install() {
 		elisp-install "${PN}" contrib/julia-mode.el
 		elisp-site-file-install "${FILESDIR}"/63julia-gentoo.el
 	fi
-	use doc && dohtml -r doc/_build/html/
+	use doc && dohtml -r doc/_build/html/*
 	dodoc README.md
 }
 
@@ -89,7 +103,3 @@ pkg_postinst() {
 pkg_postrm() {
 	use emacs && elisp-site-regen
 }
-
-src_test() {
-	emake -C test || die "Running tests failed"
-}

diff --git a/dev-lang/julia/metadata.xml b/dev-lang/julia/metadata.xml
index a073a33..523edd5 100644
--- a/dev-lang/julia/metadata.xml
+++ b/dev-lang/julia/metadata.xml
@@ -1,17 +1,17 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
 <pkgmetadata>
-  <herd>sci</herd>
-  <longdescription>
-	Julia is a high-level, high-performance dynamic programming language for
-	technical computing, with syntax that is familiar to users of other
-	technical computing environments. It provides a sophisticated compiler,
-	distributed parallel execution, numerical accuracy, and an extensive
-	mathematical function library. The library, mostly written in Julia itself,
-	also integrates mature, best-of-breed C and Fortran libraries for linear
-	algebra, random number generation, FFTs, and string processing. More
-	libraries continue to be added over time. Julia programs are organized
-	around defining functions, and overloading them for different combinations
-	of argument types (which can also be user-defined).
-	</longdescription>
+<herd>sci</herd>
+<longdescription>
+  Julia is a high-level, high-performance dynamic programming language for
+  technical computing, with syntax that is familiar to users of other
+  technical computing environments. It provides a sophisticated compiler,
+  distributed parallel execution, numerical accuracy, and an extensive
+  mathematical function library. The library, mostly written in Julia itself,
+  also integrates mature, best-of-breed C and Fortran libraries for linear
+  algebra, random number generation, FFTs, and string processing. More
+  libraries continue to be added over time. Julia programs are organized
+  around defining functions, and overloading them for different combinations
+  of argument types (which can also be user-defined).
+</longdescription>
 </pkgmetadata>


             reply	other threads:[~2013-07-17 17:59 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-07-17 17:59 Sebastien Fabbro [this message]
  -- strict thread matches above, loose matches on Subject: below --
2015-09-23 12:48 [gentoo-commits] proj/sci:master commit in: dev-lang/julia/ Justin Lecher
2015-03-08 18:08 Justin Lecher
2014-10-06  5:56 Justin Lecher
2014-08-27  4:33 Francois Bissey
2014-08-27  3:54 Francois Bissey
2014-07-03 22:23 Sebastien Fabbro
2014-04-02 23:05 Sebastien Fabbro
2014-02-10  4:14 Sebastien Fabbro
2014-01-27  3:00 Guillaume Horel
2014-01-18  4:35 Mark Wright
2014-01-06 19:27 Justin Lecher
2013-07-15 13:57 Sebastien Fabbro
2013-07-03  3:19 Guillaume Horel
2013-06-14 11:21 [gentoo-commits] proj/sci:fixing " Justin Lecher
2013-06-14 11:21 ` [gentoo-commits] proj/sci:master " Justin Lecher
2013-05-15  9:11 Kacper Kowalik
2013-01-07  2:49 Guillaume Horel
2013-01-06 15:56 Guillaume Horel
2013-01-06 15:53 Guillaume Horel
2012-12-19  7:26 Guillaume Horel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1374083937.cf87a8f5940a064d968a411bc54102c98ee9ab27.bicatali@gentoo \
    --to=bicatali@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox