Skip to content

Commit

Permalink
First attempt at splitting up library installation into JL_LIBDIR and…
Browse files Browse the repository at this point in the history
… JL_PRIVATE_LIBDIR
  • Loading branch information
staticfloat committed Nov 19, 2012
1 parent 4c09718 commit 77f1104
Show file tree
Hide file tree
Showing 14 changed files with 173 additions and 157 deletions.
36 changes: 25 additions & 11 deletions Make.inc
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ JULIA_VERSION = $(shell cat $(JULIAHOME)/VERSION)
JULIA_COMMIT = $(shell git rev-parse --short=10 HEAD)

USR = $(JULIAHOME)/usr
USRLIB = $(USR)/lib
USRBIN = $(USR)/bin
USRINC = $(USR)/include
LLVMROOT = $(USR)
Expand Down Expand Up @@ -79,7 +78,7 @@ endif
endif

# if not absolute, then relative to JULIA_HOME
JCFLAGS += '-DJL_SYSTEM_IMAGE_PATH="../lib/julia/sys.ji"'
JCFLAGS += '-DJL_SYSTEM_IMAGE_PATH="../share/julia/sys.ji"'

# OPENBLAS build options
OPENBLAS_DYNAMIC_ARCH=0
Expand Down Expand Up @@ -126,7 +125,7 @@ endif
ifeq ($(USE_SYSTEM_LIBUNWIND), 1)
LIBUNWIND=-lunwind-generic -lunwind
else
LIBUNWIND=$(USRLIB)/libunwind-generic.a $(USRLIB)/libunwind.a
LIBUNWIND=$(USR)/$(JL_LIBDIR)/libunwind-generic.a $(USR)/$(JL_LIBDIR)/libunwind.a
endif

ifeq ($(USE_SYSTEM_LLVM), 1)
Expand All @@ -138,19 +137,19 @@ endif
ifeq ($(USE_SYSTEM_READLINE), 1)
READLINE = -lreadline
else
READLINE = $(USR)/lib/libreadline.a
READLINE = $(USR)/$(JL_LIBDIR)/libreadline.a
endif

ifneq ($(OS),WINNT)
READLINE += -lncurses
else
READLINE += $(USR)/lib/libhistory.a
READLINE += $(USR)/$(JL_LIBDIR)/libhistory.a
endif

ifeq ($(USE_SYSTEM_PCRE), 1)
PCRE_CONFIG = pcre-config
else
PCRE_CONFIG = $(USR)/bin/pcre-config
PCRE_CONFIG = $(USRBIN)/pcre-config
endif

ifeq ($(USE_SYSTEM_BLAS), 1)
Expand All @@ -163,10 +162,10 @@ LIBBLASNAME = libblas
endif
else
ifeq ($(OS), WINNT)
LIBBLAS = $(USRLIB)/libopenblas-r0.2.2.$(SHLIB_EXT) #necessary due to some stupid Windows behavoir - will try yto fix soon
LIBBLAS = $(USR)/$(JL_LIBDIR)/libopenblas-r0.2.2.$(SHLIB_EXT) #necessary due to some stupid Windows behavoir - will try yto fix soon
LIBBLASNAME = libopenblas-r0.2.2
else
LIBBLAS = -L$(USRLIB) -lopenblas
LIBBLAS = -L$(USR)/$(JL_LIBDIR) -lopenblas
LIBBLASNAME = libopenblas
endif
endif
Expand Down Expand Up @@ -202,7 +201,7 @@ ifeq ($(OS), Linux)
INSTALL_NAME_CMD = true -ignore
INSTALL_NAME_CHANGE_CMD = true -ignore
SHLIB_EXT = so
RPATH = -Wl,-rpath,'$$ORIGIN/../lib'
RPATH = -Wl,-rpath,'$$ORIGIN/../$(JL_LIBDIR)' -Wl,-rpath,'$$ORIGIN/../$(JL_PRIVATE_LIBDIR)'
RPATH_ORIGIN = -Wl,-rpath,'$$ORIGIN'
OSLIBS += -ldl -lrt -Wl,--export-dynamic -Wl,--version-script=$(JULIAHOME)/src/julia.expmap -Wl,--no-whole-archive $(LIBUNWIND)
WHOLE_ARCHIVE = -Wl,--whole-archive
Expand All @@ -214,7 +213,7 @@ ifeq ($(OS), FreeBSD)
INSTALL_NAME_CMD = true -ignore
INSTALL_NAME_CHANGE_CMD = true -ignore
SHLIB_EXT = so
RPATH = -Wl,-rpath,'$$ORIGIN/../lib' -Wl,-z,origin
RPATH = -Wl,-rpath,'$$ORIGIN/../$(JL_LIBDIR)' -Wl,-rpath,'$$ORIGIN/../$(JL_PRIVATE_LIBDIR)' -Wl,-z,origin
RPATH_ORIGIN = -Wl,-rpath,'$$ORIGIN' -Wl,-z,origin
WHOLE_ARCHIVE = -Wl,--whole-archive
NO_WHOLE_ARCHIVE = -Wl,--no-whole-archive
Expand All @@ -225,7 +224,7 @@ endif
ifeq ($(OS), Darwin)
INSTALL_NAME_CMD = install_name_tool -id $(INSTALL_NAME_ID_DIR)
INSTALL_NAME_CHANGE_CMD = install_name_tool -change
RPATH = -Wl,-rpath,@executable_path/../lib
RPATH = -Wl,-rpath,'@executable_path/../$(JL_LIBDIR)' -Wl,-rpath,'@executable_path/../$(JL_PRIVATE_LIBDIR)'
SHLIB_EXT = dylib
OSLIBS += -ldl -Wl,-w -framework ApplicationServices
WHOLE_ARCHIVE = -Xlinker -all_load
Expand Down Expand Up @@ -267,6 +266,21 @@ LIBBLASNAME = libsatlas
LIBLAPACKNAME = $(LIBBLASNAME)
endif

# List of "private" libraries, e.g. ones that get installed to lib/julia
JL_PRIVATE_LIBS = openlibm julia-release suitesparse_wrapper tk_wrapper gmp_wrapper glpk_wrapper random
JL_LIBS = Rmath amd arpack cholmod colamd fftw3 fftw3f fftw3_threads fftw3f_threads glpk gmp grisu history $(OPENBLASNAME) pcre readline spqr umfpack z

# Directories where said libraries get installed to
JL_PRIVATE_LIBDIR = lib/julia
JL_LIBDIR = lib

# If we're on debian, default to arch-dependent library dirs
ifeq ($(USE_DEBIAN), 1)
MULTIARCH = $(shell gcc -print-multiarch)
JL_PRIVATE_LIBDIR = lib/$(MULTIARCH)/julia
JL_LIBDIR = lib/$(MULTIARCH)/
endif

# Make tricks

define dir_target
Expand Down
41 changes: 22 additions & 19 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -4,20 +4,19 @@ include $(JULIAHOME)/Make.inc
all: default
default: release

DIRS = $(BUILD)/bin $(BUILD)/etc $(BUILD)/lib/julia $(BUILD)/share/julia
DIRS = $(BUILD)/bin $(BUILD)/etc $(BUILD)/$(JL_LIBDIR) $(BUILD)/$(JL_PRIVATE_LIBDIR) $(BUILD)/share/julia

$(foreach dir,$(DIRS),$(eval $(call dir_target,$(dir))))
$(foreach link,extras base ui test,$(eval $(call symlink_target,$(link),$(BUILD)/lib/julia)))
$(foreach link,doc examples,$(eval $(call symlink_target,$(link),$(BUILD)/share/julia)))
$(foreach link,extras base ui test doc examples,$(eval $(call symlink_target,$(link),$(BUILD)/share/julia)))

MAKEs = $(MAKE)
ifeq ($(USE_QUIET), 1)
MAKEs += -s
endif

debug release: | $(DIRS) $(BUILD)/lib/julia/extras $(BUILD)/lib/julia/base $(BUILD)/lib/julia/ui $(BUILD)/lib/julia/test $(BUILD)/share/julia/doc $(BUILD)/share/julia/examples
debug release: | $(DIRS) $(BUILD)/share/julia/extras $(BUILD)/share/julia/base $(BUILD)/share/julia/ui $(BUILD)/share/julia/test $(BUILD)/share/julia/doc $(BUILD)/share/julia/examples
@$(MAKEs) julia-$@
@$(MAKEs) JULIA_EXECUTABLE=$(JULIA_EXECUTABLE_$@) $(BUILD)/lib/julia/sys.ji
@$(MAKEs) JULIA_EXECUTABLE=$(JULIA_EXECUTABLE_$@) $(BUILD)/share/julia/sys.ji

julia-debug julia-release:
@$(MAKEs) -C deps
Expand All @@ -27,13 +26,13 @@ julia-debug julia-release:
@$(MAKEs) -C ui $@
@ln -sf $(BUILD)/bin/$@-$(DEFAULT_REPL) julia

$(BUILD)/lib/julia/helpdb.jl: doc/helpdb.jl | $(BUILD)/lib/julia
$(BUILD)/share/julia/helpdb.jl: doc/helpdb.jl | $(BUILD)/share/julia
@cp $< $@

# use sys.ji if it exists, otherwise run two stages
$(BUILD)/lib/julia/sys.ji: VERSION base/*.jl $(BUILD)/lib/julia/helpdb.jl
$(BUILD)/share/julia/sys.ji: VERSION base/*.jl $(BUILD)/share/julia/helpdb.jl
$(QUIET_JULIA) cd base && \
(test -f $(BUILD)/lib/julia/sys.ji || $(JULIA_EXECUTABLE) -bf sysimg.jl) && $(JULIA_EXECUTABLE) -f sysimg.jl || echo "Note: this error is usually fixed by running 'make clean'."
(test -f $(BUILD)/share/julia/sys.ji || $(JULIA_EXECUTABLE) -bf sysimg.jl) && $(JULIA_EXECUTABLE) -f sysimg.jl || echo "Note: this error is usually fixed by running 'make clean'."

ifeq ($(OS), WINNT)
OPENBLASNAME=openblas-r0.1.1
Expand All @@ -43,25 +42,28 @@ endif
PREFIX ?= julia-$(JULIA_COMMIT)
install: release
@$(MAKEs) -C test/unicode
@for subdir in "sbin" "bin" "etc" "lib/julia" "share/julia" ; do \
@for subdir in "sbin" "bin" "etc" $(JL_LIBDIR) $(JL_PRIVATE_LIBDIR) "share/julia" ; do \
mkdir -p $(PREFIX)/$$subdir ; \
done
cp $(BUILD)/bin/*julia* $(PREFIX)/bin
cd $(PREFIX)/bin && ln -s julia-release-$(DEFAULT_REPL) julia
cp -R -L $(BUILD)/lib/julia/* $(PREFIX)/lib/julia
-for suffix in "Rmath" "amd" "arpack" "cholmod" "colamd" "openlibm" "fftw3" "fftw3f" "fftw3_threads" "fftw3f_threads" "glpk" "glpk_wrapper" "gmp" "gmp_wrapper" "grisu" "history" "julia-release" "$(OPENBLASNAME)" "openlibm" "pcre" "random" "readline" "suitesparse_wrapper" "tk_wrapper" "spqr" "umfpack" "z" ; do \
cp $(BUILD)/lib/lib$${suffix}.$(SHLIB_EXT) $(PREFIX)/lib ; \
-for suffix in $(JL_LIBS) ; do \
cp $(BUILD)/$(JL_LIBDIR)/lib$${suffix}.$(SHLIB_EXT) $(PREFIX)/$(JL_LIBDIR) ; \
done
# Web-REPL stuff
-cp $(BUILD)/lib/mod* $(PREFIX)/lib
-for suffix in $(JL_PRIVATE_LIBS) ; do \
cp $(BUILD)/$(JL_PRIVATE_LIBDIR)/lib$${suffix}.$(SHLIB_EXT) $(PREFIX)/$(JL_PRIVATE_LIBDIR) ; \
done
# Web-REPL stuff
-cp -R -L $(BUILD)/$(JL_LIBDIR)/lighttpd $(PREFIX)/$(JL_LIBDIR)
-cp $(BUILD)/sbin/* $(PREFIX)/sbin
-cp $(BUILD)/etc/* $(PREFIX)/etc
-cp -R -L $(BUILD)/share/* $(PREFIX)/share
# Copy in all .jl sources as well
-cp -R -L $(BUILD)/share/julia $(PREFIX)/share/
ifeq ($(OS), WINNT)
-cp dist/windows/* $(PREFIX)
ifeq ($(shell uname),MINGW32_NT-6.1)
-for dllname in "libgfortran-3" "libquadmath-0" "libgcc_s_dw2-1" "libstdc++-6,pthreadgc2" ; do \
cp /mingw/bin/$${dllname}.dll $(PREFIX)/lib ; \
cp /mingw/bin/$${dllname}.dll $(PREFIX)/$(JL_LIBDIR) ; \
done
endif
endif
Expand All @@ -71,7 +73,7 @@ dist: cleanall
-$(MAKE) -C deps clean-openblas
$(MAKE) install OPENBLAS_DYNAMIC_ARCH=1
ifeq ($(OS), Darwin)
-./contrib/fixup-libgfortran.sh $(PREFIX)/lib /usr/local/lib
-./contrib/fixup-libgfortran.sh $(PREFIX)/$(JL_LIBDIR) /usr/local/lib
endif
tar zcvf julia-$(JULIA_COMMIT)-$(OS)-$(ARCH).tar.gz julia-$(JULIA_COMMIT)
rm -fr julia-$(JULIA_COMMIT)
Expand All @@ -82,7 +84,7 @@ deb:
debclean:
fakeroot debian/rules clean

h2j: $(BUILD)/lib/libLLVM*.a $(BUILD)/lib/libclang*.a src/h2j.cpp
h2j: $(BUILD)/$(JL_LIBDIR)/libLLVM*.a $(BUILD)/$(JL_LIBDIR)/libclang*.a src/h2j.cpp
$(QUIET_CC) g++ -O2 -fno-rtti -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -Iinclude $^ -o $@

clean: | $(CLEAN_TARGETS)
Expand All @@ -98,7 +100,8 @@ clean: | $(CLEAN_TARGETS)
done \
done
@rm -f *~ *# *.tar.gz
@rm -fr $(BUILD)/lib/julia
@rm -fr $(BUILD)/$(JL_LIBDIR)
@rm -fr $(BUILD)/$(JL_PRIVATE_LIBDIR)

cleanall: clean
@$(MAKE) -C src clean-flisp clean-support
Expand Down
8 changes: 4 additions & 4 deletions base/client.jl
Original file line number Diff line number Diff line change
Expand Up @@ -230,10 +230,10 @@ function _start()
global const LOAD_PATH = ByteString[
".",
julia_pkgdir(),
abs_path("$JULIA_HOME/../lib/julia"),
abs_path("$JULIA_HOME/../lib/julia/base"),
abs_path("$JULIA_HOME/../lib/julia/extras"),
abs_path("$JULIA_HOME/../lib/julia/ui"),
abs_path("$JULIA_HOME/../share/julia"),
abs_path("$JULIA_HOME/../share/julia/base"),
abs_path("$JULIA_HOME/../share/julia/extras"),
abs_path("$JULIA_HOME/../share/julia/ui"),
]

(quiet,repl,startup) = process_options(ARGS)
Expand Down
2 changes: 1 addition & 1 deletion base/sysimg.jl
Original file line number Diff line number Diff line change
Expand Up @@ -279,4 +279,4 @@ using Base

# create system image file
ccall(:jl_save_system_image, Void, (Ptr{Uint8},Ptr{Uint8}),
"$JULIA_HOME/../lib/julia/sys.ji", "start_image.jl")
"$JULIA_HOME/../share/julia/sys.ji", "start_image.jl")
2 changes: 1 addition & 1 deletion base/util.jl
Original file line number Diff line number Diff line change
Expand Up @@ -300,7 +300,7 @@ function _jl_init_help()
_jl_help_module_dict, _jl_help_function_dict
if _jl_help_category_dict == nothing
println("Loading help data...")
helpdb = evalfile("$JULIA_HOME/../lib/julia/helpdb.jl")
helpdb = evalfile("$JULIA_HOME/../share/julia/helpdb.jl")
_jl_help_category_list = {}
_jl_help_category_dict = Dict()
_jl_help_module_dict = Dict()
Expand Down
22 changes: 11 additions & 11 deletions contrib/repackage_system_suitesparse3.make
Original file line number Diff line number Diff line change
Expand Up @@ -6,18 +6,18 @@ include $(JULIAHOME)/Make.inc
all: default

default:
mkdir -p $(USRLIB)
mkdir -p $(USR)/$(JL_LIBDIR)
mkdir -p $(JULIAHOME)/deps/SuiteSparse-SYSTEM/lib
cd $(JULIAHOME)/deps/SuiteSparse-SYSTEM/lib && \
rm -f *.a && \
cp -f $(shell find /lib /usr/lib /usr/local/lib $(shell eval $(JULIAHOME)/contrib/filterArgs.sh $(LDFLAGS)) -name libamd.a -o -name libcolamd.a -o -name libcholmod.a -o -name libumfpack.a -o -name libspqr.a 2>/dev/null) . && \
$(CC) -shared $(WHOLE_ARCHIVE) libamd.a $(NO_WHOLE_ARCHIVE) -o $(USRLIB)/libamd.$(SHLIB_EXT) && \
$(INSTALL_NAME_CMD)libamd.$(SHLIB_EXT) $(USRLIB)/libamd.$(SHLIB_EXT) && \
$(CC) -shared $(WHOLE_ARCHIVE) libcolamd.a $(NO_WHOLE_ARCHIVE) -o $(USRLIB)/libcolamd.$(SHLIB_EXT) && \
$(INSTALL_NAME_CMD)libcolamd.$(SHLIB_EXT) $(USRLIB)/libcolamd.$(SHLIB_EXT) && \
$(CXX) -shared $(WHOLE_ARCHIVE) libcholmod.a $(NO_WHOLE_ARCHIVE) -o $(USRLIB)/libcholmod.$(SHLIB_EXT) $(LDFLAGS) -L$(USRLIB) -lcolamd -lamd $(LIBBLAS) && \
$(INSTALL_NAME_CMD)libcholmod.$(SHLIB_EXT) $(USRLIB)/libcholmod.$(SHLIB_EXT) && \
$(CXX) -shared $(WHOLE_ARCHIVE) libumfpack.a $(NO_WHOLE_ARCHIVE) -o $(USRLIB)/libumfpack.$(SHLIB_EXT) $(LDFLAGS) -L$(USRLIB) -lcholmod -lcolamd -lamd $(LIBBLAS) && \
$(INSTALL_NAME_CMD)libumfpack.$(SHLIB_EXT) $(USRLIB)/libumfpack.$(SHLIB_EXT) && \
$(CXX) -shared $(WHOLE_ARCHIVE) libspqr.a $(NO_WHOLE_ARCHIVE) -o $(USRLIB)/libspqr.$(SHLIB_EXT) $(LDFLAGS) -L$(USRLIB) -lcholmod -lcolamd -lamd $(LIBBLAS) && \
$(INSTALL_NAME_CMD)libspqr.$(SHLIB_EXT) $(USRLIB)/libspqr.$(SHLIB_EXT)
$(CC) -shared $(WHOLE_ARCHIVE) libamd.a $(NO_WHOLE_ARCHIVE) -o $(USR)/$(JL_LIBDIR)/libamd.$(SHLIB_EXT) && \
$(INSTALL_NAME_CMD)libamd.$(SHLIB_EXT) $(USR)/$(JL_LIBDIR)/libamd.$(SHLIB_EXT) && \
$(CC) -shared $(WHOLE_ARCHIVE) libcolamd.a $(NO_WHOLE_ARCHIVE) -o $(USR)/$(JL_LIBDIR)/libcolamd.$(SHLIB_EXT) && \
$(INSTALL_NAME_CMD)libcolamd.$(SHLIB_EXT) $(USR)/$(JL_LIBDIR)/libcolamd.$(SHLIB_EXT) && \
$(CXX) -shared $(WHOLE_ARCHIVE) libcholmod.a $(NO_WHOLE_ARCHIVE) -o $(USR)/$(JL_LIBDIR)/libcholmod.$(SHLIB_EXT) $(LDFLAGS) -L$(USR)/$(JL_LIBDIR) -lcolamd -lamd $(LIBBLAS) && \
$(INSTALL_NAME_CMD)libcholmod.$(SHLIB_EXT) $(USR)/$(JL_LIBDIR)/libcholmod.$(SHLIB_EXT) && \
$(CXX) -shared $(WHOLE_ARCHIVE) libumfpack.a $(NO_WHOLE_ARCHIVE) -o $(USR)/$(JL_LIBDIR)/libumfpack.$(SHLIB_EXT) $(LDFLAGS) -L$(USR)/$(JL_LIBDIR) -lcholmod -lcolamd -lamd $(LIBBLAS) && \
$(INSTALL_NAME_CMD)libumfpack.$(SHLIB_EXT) $(USR)/$(JL_LIBDIR)/libumfpack.$(SHLIB_EXT) && \
$(CXX) -shared $(WHOLE_ARCHIVE) libspqr.a $(NO_WHOLE_ARCHIVE) -o $(USR)/$(JL_LIBDIR)/libspqr.$(SHLIB_EXT) $(LDFLAGS) -L$(USR)/$(JL_LIBDIR) -lcholmod -lcolamd -lamd $(LIBBLAS) && \
$(INSTALL_NAME_CMD)libspqr.$(SHLIB_EXT) $(USR)/$(JL_LIBDIR)/libspqr.$(SHLIB_EXT)
22 changes: 11 additions & 11 deletions contrib/repackage_system_suitesparse4.make
Original file line number Diff line number Diff line change
Expand Up @@ -6,19 +6,19 @@ include $(JULIAHOME)/Make.inc
all: default

default:
mkdir -p $(USRLIB)
mkdir -p $(USR)/$(JL_LIBDIR)
mkdir -p $(JULIAHOME)/deps/SuiteSparse-SYSTEM/lib
cd $(JULIAHOME)/deps/SuiteSparse-SYSTEM/lib && \
rm -f *.a && \
cp -f $(shell find /lib /usr/lib /usr/local/lib $(shell eval $(JULIAHOME)/contrib/filterArgs.sh $(LDFLAGS)) -name libamd.a -o -name libcolamd.a -o -name libcholmod.a -o -name libumfpack.a -o -name libspqr.a -o -name libsuitesparseconfig.a 2>/dev/null) . && \
$(CC) -shared $(WHOLE_ARCHIVE) libamd.a $(NO_WHOLE_ARCHIVE) -o $(USRLIB)/libamd.$(SHLIB_EXT) && \
$(INSTALL_NAME_CMD)libamd.$(SHLIB_EXT) $(USRLIB)/libamd.$(SHLIB_EXT) && \
$(CC) -shared $(WHOLE_ARCHIVE) libcolamd.a $(NO_WHOLE_ARCHIVE) -o $(USRLIB)/libcolamd.$(SHLIB_EXT) && \
$(INSTALL_NAME_CMD)libcolamd.$(SHLIB_EXT) $(USRLIB)/libcolamd.$(SHLIB_EXT) && \
$(CXX) -shared $(WHOLE_ARCHIVE) libsuitesparseconfig.a libcholmod.a $(NO_WHOLE_ARCHIVE) -o $(USRLIB)/libcholmod.$(SHLIB_EXT) $(LDFLAGS) -L$(USRLIB) -L. -lcolamd -lccolamd -lcamd -lamd $(LIBBLAS) $(RPATH_ORIGIN) && \
$(INSTALL_NAME_CMD)libcholmod.$(SHLIB_EXT) $(USRLIB)/libcholmod.$(SHLIB_EXT) && \
$(CXX) -shared $(WHOLE_ARCHIVE) libsuitesparseconfig.a libumfpack.a $(NO_WHOLE_ARCHIVE) -o $(USRLIB)/libumfpack.$(SHLIB_EXT) $(LDFLAGS) -L$(USRLIB) -L. -lcholmod -lcolamd -lcamd -lamd $(LIBBLAS) $(RPATH_ORIGIN) && \
$(INSTALL_NAME_CMD)libumfpack.$(SHLIB_EXT) $(USRLIB)/libumfpack.$(SHLIB_EXT) && \
$(CXX) -shared $(WHOLE_ARCHIVE) libsuitesparseconfig.a libspqr.a $(NO_WHOLE_ARCHIVE) -o $(USRLIB)/libspqr.$(SHLIB_EXT) $(LDFLAGS) -L$(USRLIB) -lcholmod -lcolamd -lamd $(LIBBLAS) $(RPATH_ORIGIN) && \
$(INSTALL_NAME_CMD)libspqr.$(SHLIB_EXT) $(USRLIB)/libspqr.$(SHLIB_EXT)
$(CC) -shared $(WHOLE_ARCHIVE) libamd.a $(NO_WHOLE_ARCHIVE) -o $(USR)/$(JL_LIBDIR)/libamd.$(SHLIB_EXT) && \
$(INSTALL_NAME_CMD)libamd.$(SHLIB_EXT) $(USR)/$(JL_LIBDIR)/libamd.$(SHLIB_EXT) && \
$(CC) -shared $(WHOLE_ARCHIVE) libcolamd.a $(NO_WHOLE_ARCHIVE) -o $(USR)/$(JL_LIBDIR)/libcolamd.$(SHLIB_EXT) && \
$(INSTALL_NAME_CMD)libcolamd.$(SHLIB_EXT) $(USR)/$(JL_LIBDIR)/libcolamd.$(SHLIB_EXT) && \
$(CXX) -shared $(WHOLE_ARCHIVE) libsuitesparseconfig.a libcholmod.a $(NO_WHOLE_ARCHIVE) -o $(USR)/$(JL_LIBDIR)/libcholmod.$(SHLIB_EXT) $(LDFLAGS) -L$(USR)/$(JL_LIBDIR) -L. -lcolamd -lccolamd -lcamd -lamd $(LIBBLAS) $(RPATH_ORIGIN) && \
$(INSTALL_NAME_CMD)libcholmod.$(SHLIB_EXT) $(USR)/$(JL_LIBDIR)/libcholmod.$(SHLIB_EXT) && \
$(CXX) -shared $(WHOLE_ARCHIVE) libsuitesparseconfig.a libumfpack.a $(NO_WHOLE_ARCHIVE) -o $(USR)/$(JL_LIBDIR)/libumfpack.$(SHLIB_EXT) $(LDFLAGS) -L$(USR)/$(JL_LIBDIR) -L. -lcholmod -lcolamd -lcamd -lamd $(LIBBLAS) $(RPATH_ORIGIN) && \
$(INSTALL_NAME_CMD)libumfpack.$(SHLIB_EXT) $(USR)/$(JL_LIBDIR)/libumfpack.$(SHLIB_EXT) && \
$(CXX) -shared $(WHOLE_ARCHIVE) libsuitesparseconfig.a libspqr.a $(NO_WHOLE_ARCHIVE) -o $(USR)/$(JL_LIBDIR)/libspqr.$(SHLIB_EXT) $(LDFLAGS) -L$(USR)/$(JL_LIBDIR) -lcholmod -lcolamd -lamd $(LIBBLAS) $(RPATH_ORIGIN) && \
$(INSTALL_NAME_CMD)libspqr.$(SHLIB_EXT) $(USR)/$(JL_LIBDIR)/libspqr.$(SHLIB_EXT)

Loading

0 comments on commit 77f1104

Please sign in to comment.