bicatali    14/04/02 23:03:34

  Modified:             metadata.xml ChangeLog
  Added:                julia-0.2.1.ebuild
  Log:
  Version bump. Refactored ebuild to use more system dependencies, cleanup, add 
emacs support, readline-6.3 patch, better prefix support. Add sci as herd and 
longdescription.
  
  (Portage version: 2.2.8-prefix/cvs/Linux x86_64, signed Manifest commit with 
key 0x13CB1360)

Revision  Changes    Path
1.2                  dev-lang/julia/metadata.xml

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/julia/metadata.xml?rev=1.2&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/julia/metadata.xml?rev=1.2&content-type=text/plain
diff : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/julia/metadata.xml?r1=1.1&r2=1.2

Index: metadata.xml
===================================================================
RCS file: /var/cvsroot/gentoo-x86/dev-lang/julia/metadata.xml,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- metadata.xml        25 Nov 2013 23:40:37 -0000      1.1
+++ metadata.xml        2 Apr 2014 23:03:34 -0000       1.2
@@ -1,8 +1,21 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
 <pkgmetadata>
-       <maintainer>
-               <email>patr...@gentoo.org</email>
-               <name>Patrick Lauer</name>
-       </maintainer>
+<maintainer>
+  <email>patr...@gentoo.org</email>
+  <name>Patrick Lauer</name>
+</maintainer>
+<herd>sci</herd>
+<longdescription lang="en">
+  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. Julia programs are organized around defining
+  functions, and overloading them for different combinations of
+  argument types (which can also be user-defined).
+</longdescription>
 </pkgmetadata>



1.8                  dev-lang/julia/ChangeLog

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/julia/ChangeLog?rev=1.8&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/julia/ChangeLog?rev=1.8&content-type=text/plain
diff : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/julia/ChangeLog?r1=1.7&r2=1.8

Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/dev-lang/julia/ChangeLog,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- ChangeLog   14 Mar 2014 19:53:58 -0000      1.7
+++ ChangeLog   2 Apr 2014 23:03:34 -0000       1.8
@@ -1,6 +1,14 @@
 # ChangeLog for dev-lang/julia
 # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lang/julia/ChangeLog,v 1.7 2014/03/14 
19:53:58 calchan Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/julia/ChangeLog,v 1.8 2014/04/02 
23:03:34 bicatali Exp $
+
+*julia-0.2.1 (02 Apr 2014)
+
+  02 Apr 2014; Sébastien Fabbro <bicat...@gentoo.org> +files/63julia-gentoo.el,
+  +files/julia-0.2.1-readline63.patch, +julia-0.2.1.ebuild, metadata.xml:
+  Version bump. Refactored ebuild to use more system dependencies, cleanup, add
+  emacs support, readline-6.3 patch, better prefix support. Add sci as herd and
+  longdescription.
 
   14 Mar 2014; Denis Dupeyron <calc...@gentoo.org> julia-0.2.0-r1.ebuild:
   Fixed confusing comment, bug #502482.



1.1                  dev-lang/julia/julia-0.2.1.ebuild

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/julia/julia-0.2.1.ebuild?rev=1.1&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/julia/julia-0.2.1.ebuild?rev=1.1&content-type=text/plain

Index: julia-0.2.1.ebuild
===================================================================
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-lang/julia/julia-0.2.1.ebuild,v 1.1 
2014/04/02 23:03:34 bicatali Exp $

EAPI=5

inherit elisp-common eutils multilib pax-utils toolchain-funcs

PDSFMT=dSFMT-src-2.2

DESCRIPTION="High-performance programming language for technical computing"
HOMEPAGE="http://julialang.org/";
SRC_URI="
        https://github.com/JuliaLang/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
        http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/SFMT/${PDSFMT}.tar.gz
        http://dev.gentoo.org/~bicatali/distfiles/libuv-${P}.tar.gz
"

LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
IUSE="emacs"

RDEPEND="${CDEPEND}
        dev-lang/R:0=
        dev-libs/double-conversion:0=
        dev-libs/gmp:0=
        dev-libs/libpcre:3=
        dev-libs/mpfr:0=
        sci-libs/arpack:0=
        sci-libs/cholmod:0=
        sci-libs/fftw:3.0=
        sci-libs/openlibm:0=
        sci-libs/spqr:0=
        sci-libs/umfpack:0=
        sci-mathematics/glpk:0=
        >=sys-devel/llvm-3.3
        >=sys-libs/libunwind-1.1:7=
        sys-libs/readline:0=
        sys-libs/zlib:0=
        virtual/blas
        virtual/lapack
        emacs? ( app-emacs/ess )"

DEPEND="${RDEPEND}
        dev-util/patchelf
        virtual/pkgconfig"

src_prepare() {
        epatch "${FILESDIR}"/${P}-readline63.patch

        ln -s "${DISTDIR}"/${PDSFMT}.tar.gz deps/random/dsfmt-2.2.tar.gz || die
        rmdir deps/libuv && ln -s "${WORKDIR}"/libuv deps/libuv
        # no fetching in ebuild
        # /usr/include/suitesparse is for debian only
        # respect prefix, flags
        sed -i \
                -e 's|$(JLDOWNLOAD)|${EPREFIX}/bin/true|' \
                -e 's|git submodule|${EPREFIX}/bin/true|g' \
                -e 's|^\(SUITESPARSE_INC\s*=\).*||g' \
                -e "s|-O3|${CFLAGS}|g" \
                -e 's|/usr/bin/||g' \
                -e "s|/usr/include|${EPREFIX%/}/usr/include|g" \
                deps/Makefile || die

        sed -i \
                -e "s|\(JULIA_EXECUTABLE = \)\(\$(JULIAHOME)/julia\)|\1 
LD_LIBRARY_PATH=\$(BUILD)/$(get_libdir) \2|" \
                -e "s|-O3|${CFLAGS}|g" \
                -e "s|LIBDIR = lib|LIBDIR = $(get_libdir)|" \
                -e "s|/usr/lib|${EPREFIX}/usr/$(get_libdir)|" \
                -e "s|/usr/include|${EPREFIX}/usr/include|" \
                -e "s|\$(BUILD)/lib|\$(BUILD)/$(get_libdir)|" \
                -e "s|^JULIA_COMMIT = .*|JULIA_COMMIT = v${PV}|" \
                Make.inc || die

        sed -i \
                -e "s|,lib)|,$(get_libdir))|g" \
                -e "s|\$(BUILD)/lib|\$(BUILD)/$(get_libdir)|g" \
                Makefile || die

        sed -i \
                -e "s|ar -rcs|$(tc-getAR) -rcs|g" \
                src/Makefile || die
}

src_configure() {
        # libuv is an incompatible fork from upstream, so don't use system one
        cat <<-EOF > Make.user
                LIBBLAS=$($(tc-getPKG_CONFIG) --libs blas)
                LIBBLASNAME=$($(tc-getPKG_CONFIG) --libs blas | sed -e 
"s/-l\([a-z0-9]*\).*/lib\1/")
                LIBLAPACK=$($(tc-getPKG_CONFIG) --libs lapack)
                LIBLAPACKNAME=$($(tc-getPKG_CONFIG) --libs lapack | sed -e 
"s/-l\([a-z0-9]*\).*/lib\1/")
                USE_LLVM_SHLIB=1
                USE_SYSTEM_ARPACK=1
                USE_SYSTEM_BLAS=1
                USE_SYSTEM_FFTW=1
                USE_SYSTEM_GMP=1
                USE_SYSTEM_GRISU=1
                USE_SYSTEM_LAPACK=1
                USE_SYSTEM_LIBM=1
                USE_SYSTEM_LIBUNWIND=1
                USE_SYSTEM_LIBUV=0
                USE_SYSTEM_LLVM=1
                USE_SYSTEM_MPFR=1
                USE_SYSTEM_OPENLIBM=1
                USE_SYSTEM_PCRE=1
                USE_SYSTEM_READLINE=1
                USE_SYSTEM_RMATH=1
                USE_SYSTEM_SUITESPARSE=1
                USE_SYSTEM_ZLIB=1
                VERBOSE=1
        EOF
}

src_compile() {
        emake cleanall
        if [[ $(get_libdir) != lib ]]; then
                mkdir -p usr/$(get_libdir) || die
                ln -s $(get_libdir) usr/lib || die
        fi
        emake julia-release
        pax-mark m $(file usr/bin/julia-* | awk -F : '/ELF/ {print $1}')
        emake
        use emacs && elisp-compile contrib/julia-mode.el
}

src_test() {
        emake test
}

src_install() {
        emake install PREFIX="${D}/usr"
        cat > 99julia <<-EOF
                LDPATH=${EROOT%/}/usr/$(get_libdir)/julia
        EOF
        doenvd 99julia

        if use emacs; then
                elisp-install "${PN}" contrib/julia-mode.el
                elisp-site-file-install "${FILESDIR}"/63julia-gentoo.el
        fi
        dodoc README.md
}

pkg_postinst() {
        use emacs && elisp-site-regen
}

pkg_postrm() {
        use emacs && elisp-site-regen
}




Reply via email to