Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove ARPACK and derived functions from julia repo #27616

Merged
merged 4 commits into from
Jun 18, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 2 additions & 3 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -84,19 +84,18 @@ before_install:
contrib/travis_fastfail.sh || exit 1;
brew tap staticfloat/julia > /dev/null;
brew rm --force $(brew deps --HEAD julia);
brew install -v gcc gmp mpfr pcre2 staticfloat/julia/openblas-julia staticfloat/julia/arpack-julia staticfloat/julia/suite-sparse-julia staticfloat/juliadeps/libgfortran;
brew install -v gcc gmp mpfr pcre2 staticfloat/julia/openblas-julia staticfloat/julia/suite-sparse-julia staticfloat/juliadeps/libgfortran;
BUILDOPTS="-j3 USECLANG=1 USECCACHE=1 BINARYBUILDER_TRIPLET=x86_64-apple-darwin14";
BUILDOPTS="$BUILDOPTS USE_BINARYBUILDER_LLVM=1 LLVM_CONFIG=$TRAVIS_BUILD_DIR/usr/tools/llvm-config LLVM_SIZE=$TRAVIS_BUILD_DIR/usr/tools/llvm-size";
BUILDOPTS="$BUILDOPTS VERBOSE=1 USE_BLAS64=0 SUITESPARSE_INC=-I$(brew --prefix suite-sparse-julia)/include FORCE_ASSERTIONS=1";
BUILDOPTS="$BUILDOPTS LIBBLAS=-lopenblas LIBBLASNAME=libopenblas LIBLAPACK=-lopenblas LIBLAPACKNAME=libopenblas";
for lib in SUITESPARSE ARPACK BLAS LAPACK GMP MPFR PCRE LIBUNWIND; do
for lib in SUITESPARSE BLAS LAPACK GMP MPFR PCRE LIBUNWIND; do
BUILDOPTS="$BUILDOPTS USE_SYSTEM_$lib=1";
done;
export LDFLAGS="-L$(brew --prefix openblas-julia)/lib -L$(brew --prefix suite-sparse-julia)/lib";
spawn_DYLD_FALLBACK_LIBRARY_PATH="/usr/local/lib:/lib:/usr/lib";
spawn_DYLD_FALLBACK_LIBRARY_PATH+=":$(brew --prefix openblas-julia)/lib";
spawn_DYLD_FALLBACK_LIBRARY_PATH+=":$(brew --prefix suite-sparse-julia)/lib";
spawn_DYLD_FALLBACK_LIBRARY_PATH+=":$(brew --prefix arpack-julia)/lib";
export JULIA_MACOS_SPAWN="DYLD_FALLBACK_LIBRARY_PATH=\"$spawn_DYLD_FALLBACK_LIBRARY_PATH\" \$1";
export BUILDOPTS="$BUILDOPTS spawn=\$(JULIA_MACOS_SPAWN)";
make $BUILDOPTS -C contrib -f repackage_system_suitesparse4.make;
Expand Down
8 changes: 0 additions & 8 deletions Make.inc
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,6 @@ USE_SYSTEM_BLAS:=0
USE_SYSTEM_LAPACK:=0
USE_SYSTEM_GMP:=0
USE_SYSTEM_MPFR:=0
USE_SYSTEM_ARPACK:=0
USE_SYSTEM_SUITESPARSE:=0
USE_SYSTEM_LIBUV:=0
USE_SYSTEM_UTF8PROC:=0
Expand Down Expand Up @@ -1075,16 +1074,9 @@ MKLLIB := $(MKLROOT)/lib/ia32
endif
USE_SYSTEM_BLAS:=1
USE_SYSTEM_LAPACK:=1
ifeq ($(OS), WINNT)
LIBBLASNAME := mkl_rt
LIBLAPACKNAME := mkl_rt
# work around libtool issue with arpack
MKL_LDFLAGS := -L$(MKLLIB) -Wl,-lmkl_rt
else
LIBBLASNAME := libmkl_rt
LIBLAPACKNAME := libmkl_rt
MKL_LDFLAGS := -L$(MKLLIB) -lmkl_rt
endif
ifneq ($(strip $(MKLLIB)),)
ifeq ($(OS), Linux)
RPATH_MKL := -Wl,-rpath,$(MKLLIB)
Expand Down
1 change: 0 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -225,7 +225,6 @@ JL_PRIVATE_LIBS-$(USE_SYSTEM_LIBSSH2) += libssh2
JL_PRIVATE_LIBS-$(USE_SYSTEM_MBEDTLS) += libmbedtls libmbedcrypto libmbedx509
JL_PRIVATE_LIBS-$(USE_SYSTEM_CURL) += libcurl
JL_PRIVATE_LIBS-$(USE_SYSTEM_LIBGIT2) += libgit2
JL_PRIVATE_LIBS-$(USE_SYSTEM_ARPACK) += libarpack
ifeq ($(USE_LLVM_SHLIB),1)
JL_PRIVATE_LIBS-$(USE_SYSTEM_LLVM) += libLLVM
endif
Expand Down
5 changes: 2 additions & 3 deletions NEWS.md
Original file line number Diff line number Diff line change
Expand Up @@ -1130,9 +1130,6 @@ Deprecated or removed
`normalize`, and moved to the new `Unicode` standard library module.
`graphemes` has also been moved to that module ([#25021]).

* The functions `eigs` and `svds` have been moved to the `IterativeEigensolvers` standard
library module ([#24714]).

* Sparse array functionality has moved to the `SparseArrays` standard library module ([#25249]).

* Linear algebra functionality, and specifically the `LinAlg` module has moved to the
Expand Down Expand Up @@ -1272,6 +1269,8 @@ Deprecated or removed

* `atan2` is now a 2-argument method of `atan` ([#27248]).

* The functions `eigs` and `svds` have been moved to the `Arpack.jl` package ([#27616]).

Command-line option changes
---------------------------

Expand Down
3 changes: 1 addition & 2 deletions README.arm.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,13 +29,12 @@ override USE_SYSTEM_LAPACK=1
override USE_SYSTEM_LIBM=1
override USE_SYSTEM_GMP=1
override USE_SYSTEM_MPFR=1
override USE_SYSTEM_ARPACK=1
````

The following command will install all the necessary libraries on Ubuntu:

````
sudo apt-get install libblas3gf liblapack3gf libarpack2 libgmp3-dev \
sudo apt-get install libblas3gf liblapack3gf libgmp3-dev \
libmpfr-dev libblas-dev liblapack-dev cmake gcc-4.8 \
g++-4.8 gfortran libgfortran3 m4 libedit-dev
````
Expand Down
2 changes: 0 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -309,7 +309,6 @@ Julia uses the following external libraries, which are automatically downloaded
- **[LAPACK]** (>= 3.5) — library of linear algebra routines for solving systems of simultaneous linear equations, least-squares solutions of linear systems of equations, eigenvalue problems, and singular value problems.
- **[MKL]** (optional) – OpenBLAS and LAPACK may be replaced by Intel's MKL library.
- **[SuiteSparse]** (>= 4.1) — library of linear algebra routines for sparse matrices (see [note below](#suitesparse)).
- **[ARPACK]** — collection of subroutines designed to solve large, sparse eigenvalue problems.
- **[PCRE]** (>= 10.00) — Perl-compatible regular expressions library.
- **[GMP]** (>= 5.0) — GNU multiple precision arithmetic library, needed for `BigInt` support.
- **[MPFR]** (>= 3.0) — GNU multiple precision floating point library, needed for arbitrary precision floating point (`BigFloat`) support.
Expand Down Expand Up @@ -339,7 +338,6 @@ Julia uses the following external libraries, which are automatically downloaded
[LAPACK]: http://www.netlib.org/lapack
[MKL]: http://software.intel.com/en-us/articles/intel-mkl
[SuiteSparse]: http://faculty.cse.tamu.edu/davis/suitesparse.html
[ARPACK]: http://forge.scilab.org/index.php/p/arpack-ng
[PCRE]: http://www.pcre.org
[LLVM]: http://www.llvm.org
[FemtoLisp]: https://github.com/JeffBezanson/femtolisp
Expand Down
1 change: 0 additions & 1 deletion base/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -180,7 +180,6 @@ $(eval $(call symlink_system_library,$(LIBLAPACKNAME),LAPACK))
endif
$(eval $(call symlink_system_library,libgmp,GMP))
$(eval $(call symlink_system_library,libmpfr,MPFR))
$(eval $(call symlink_system_library,libarpack,ARPACK))
$(eval $(call symlink_system_library,libmbedtls,MBEDTLS))
$(eval $(call symlink_system_library,libssh2,LIBSSH2))
$(eval $(call symlink_system_library,libcurl,CURL))
Expand Down
2 changes: 2 additions & 0 deletions base/deprecated.jl
Original file line number Diff line number Diff line change
Expand Up @@ -1720,6 +1720,8 @@ end

@deprecate atan2(y, x) atan(y, x)

@deprecate_moved eigs "Arpack"
@deprecate_moved svds "Arpack"

# END 0.7 deprecations

Expand Down
4 changes: 0 additions & 4 deletions base/sysimg.jl
Original file line number Diff line number Diff line change
Expand Up @@ -520,7 +520,6 @@ let
:Future,
:OldPkg,
:LinearAlgebra,
:IterativeEigensolvers,
:SparseArrays,
:SuiteSparse,
:SharedArrays,
Expand Down Expand Up @@ -647,9 +646,6 @@ end
@eval @deprecate_stdlib $(Symbol("@dateformat_str")) Dates true
@deprecate_stdlib now Dates true

@deprecate_stdlib eigs IterativeEigensolvers true
@deprecate_stdlib svds IterativeEigensolvers true

@eval @deprecate_stdlib $(Symbol("@printf")) Printf true
@eval @deprecate_stdlib $(Symbol("@sprintf")) Printf true

Expand Down
11 changes: 3 additions & 8 deletions contrib/fixup-libgfortran.sh
Original file line number Diff line number Diff line change
Expand Up @@ -29,11 +29,6 @@ fi

private_libdir=$1

if [ ! -f "$private_libdir/libarpack.$SHLIB_EXT" ]; then
echo "ERROR: Could not open $private_libdir/libarpack.$SHLIB_EXT" >&2
exit 2
fi

find_shlib()
{
lib_path="$1"
Expand All @@ -52,7 +47,7 @@ private_libname()
}

# First, discover all the places where libgfortran/libgcc is, as well as their true SONAMES
for lib in arpack lapack; do
for lib in lapack; do
if [ -f "$private_libdir/lib$lib.$SHLIB_EXT" ]; then
# Find the paths to the libraries we're interested in. These are almost
# always within the same directory, but we like to be general.
Expand Down Expand Up @@ -125,11 +120,11 @@ change_linkage()
}

# For every library that remotely touches libgfortran stuff (the libraries we
# have copied in ourselves as well as arpack, etc...) we must
# have copied in ourselves) we must
# update the linkage to point to @rpath (on OSX) or $ORIGIN (on Linux) so
# that direct links to the old libgfortran directories are instead directed
# to the proper location, which is our $private_libdir.
for lib in libopenblas libarpack libcholmod liblapack $SONAMES; do
for lib in libopenblas libcholmod liblapack $SONAMES; do
# Grab every incarnation of that library that exists within $private_libdir
# (e.g. "libopenblas.so", and "libopenblas.so.0", etc...)
for lib_path in $private_libdir/$lib*; do
Expand Down
4 changes: 2 additions & 2 deletions contrib/vagrant/Vagrantfile
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ $script = <<SCRIPT
cat - > /home/vagrant/.bash_aliases <<"EOF"
export JULIA_VAGRANT_BUILD=1
BUILDOPTS="LLVM_CONFIG=llvm-config-3.3 USE_BLAS64=0"
for lib in LLVM ZLIB SUITESPARSE ARPACK BLAS LAPACK GMP MPFR PCRE LIBUNWIND GRISU OPENLIBM; do
for lib in LLVM ZLIB SUITESPARSE BLAS LAPACK GMP MPFR PCRE LIBUNWIND GRISU OPENLIBM; do
export BUILDOPTS="$BUILDOPTS USE_SYSTEM_$lib=1"
done

Expand All @@ -16,7 +16,7 @@ apt-get update -qq -y
apt-get install python-software-properties -y
add-apt-repository ppa:staticfloat/julia-deps -y
apt-get update -qq -y
apt-get install g++ git make patchelf gfortran llvm-3.3 libsuitesparse-dev libopenblas-dev liblapack-dev libarpack2-dev libgmp-dev libpcre3-dev libunwind8-dev libmpfr-dev cmake -y
apt-get install g++ git make patchelf gfortran llvm-3.3 libsuitesparse-dev libopenblas-dev liblapack-dev libgmp-dev libpcre3-dev libunwind8-dev libmpfr-dev cmake -y
SCRIPT

Vagrant.configure("2") do |config|
Expand Down
9 changes: 2 additions & 7 deletions deps/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ include $(SRCDIR)/tools/git-external.mk
# additionally all targets should be listed in the getall target for easier off-line compilation
# if you are adding a new target, it can help to copy an similar, existing target
#
# autoconf configure-driven scripts: llvm pcre arpack unwind gmp mpfr patchelf libuv curl
# autoconf configure-driven scripts: llvm pcre unwind gmp mpfr patchelf libuv curl
# custom Makefile rules: openlibm dsfmt suitesparse-wrapper suitesparse lapack openblas utf8proc objconv osxunwind libwhich
# CMake libs: libgit2 libssh2 mbedtls
#
Expand Down Expand Up @@ -126,10 +126,6 @@ ifeq ($(USE_SYSTEM_MPFR), 0)
DEP_LIBS += mpfr
endif

ifeq ($(USE_SYSTEM_ARPACK), 0)
DEP_LIBS += arpack
endif

ifeq ($(USE_GPL_LIBS), 1)
ifeq ($(USE_SYSTEM_SUITESPARSE), 0)
DEP_LIBS += suitesparse
Expand Down Expand Up @@ -172,7 +168,7 @@ uninstall: $(addprefix uninstall-, $(DEP_LIBS_STAGED))
cleanall: $(addprefix clean-, $(DEP_LIBS))
distcleanall: $(addprefix distclean-, $(DEP_LIBS))
rm -rf $(build_prefix)
getall: get-llvm get-libuv get-pcre get-openlibm get-dsfmt get-openblas get-lapack get-suitesparse get-arpack get-unwind get-osxunwind get-gmp get-mpfr get-patchelf get-utf8proc get-objconv get-mbedtls get-libssh2 get-curl get-libgit2 get-libwhich
getall: get-llvm get-libuv get-pcre get-openlibm get-dsfmt get-openblas get-lapack get-suitesparse get-unwind get-osxunwind get-gmp get-mpfr get-patchelf get-utf8proc get-objconv get-mbedtls get-libssh2 get-curl get-libgit2 get-libwhich

include $(SRCDIR)/llvm.mk
include $(SRCDIR)/libuv.mk
Expand All @@ -181,7 +177,6 @@ include $(SRCDIR)/openlibm.mk
include $(SRCDIR)/dsfmt.mk
include $(SRCDIR)/objconv.mk
include $(SRCDIR)/blas.mk
include $(SRCDIR)/arpack.mk
include $(SRCDIR)/utf8proc.mk
include $(SRCDIR)/suitesparse.mk
include $(SRCDIR)/unwind.mk
Expand Down
104 changes: 0 additions & 104 deletions deps/arpack.mk

This file was deleted.

Loading