Skip to content
Merged
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
15 changes: 14 additions & 1 deletion stdlib/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@ include $(JULIAHOME)/deps/*.version

VERSDIR := v$(shell cut -d. -f1-2 < $(JULIAHOME)/VERSION)
DIRS := $(build_datarootdir)/julia/stdlib/$(VERSDIR) $(build_prefix)/manifest/$(VERSDIR)
LIBDIR := $(build_datarootdir)/lib/julia
Copy link
Member

@nalimilan nalimilan Nov 10, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe I'm missing something, but this directory doesn't seem to exist. Shouldn't this be $(build_private_libdir)?

Copy link
Member Author

@ViralBShah ViralBShah Nov 10, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure myself - but I don't have a deep understanding of these different variables, and it is likely I didn't get it right.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@vtjnash Would you know?

Copy link
Member

@nalimilan nalimilan Nov 10, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's just that $(build_datarootdir)/lib/julia extends by default to something ending with usr/share/lib/julia, which looks weird and doesn't seem to exist. $(build_private_libdir) extends to something ending with usr/lib/julia.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are you ok to make a PR? Should be easy enough to see how it works out.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure, see #60100. Seems to work in my tests (while the current version doesn't seem to remove anything).


$(foreach dir,$(DIRS),$(eval $(call dir_target,$(dir))))

JLLS = DSFMT GMP CURL LIBGIT2 LLVM LIBSSH2 LIBUV OPENSSL MPFR NGHTTP2 \
Expand Down Expand Up @@ -60,8 +62,19 @@ $(foreach module, $(STDLIBS), $(eval $(call symlink_target,$$(JULIAHOME)/stdlib/

STDLIBS_LINK_TARGETS := $(addprefix $(build_datarootdir)/julia/stdlib/$(VERSDIR)/,$(STDLIBS))

remove-gpl-libs:
ifeq ($(USE_GPL_LIBS),0)
@echo Removing GPL libs...
-rm -f $(LIBDIR)/libcholmod*
-rm -f $(LIBDIR)/libklu_cholmod*
-rm -f $(LIBDIR)/librbio*
-rm -f $(LIBDIR)/libspqr*
-rm -f $(LIBDIR)/libumfpack*
endif

getall get: $(addprefix get-, $(STDLIBS_EXT) $(JLL_NAMES))
install: version-check $(addprefix install-, $(STDLIBS_EXT) $(JLL_NAMES)) $(STDLIBS_LINK_TARGETS)

install: version-check $(addprefix install-, $(STDLIBS_EXT) $(JLL_NAMES)) $(STDLIBS_LINK_TARGETS) remove-gpl-libs
version-check: $(addprefix version-check-, $(STDLIBS_EXT))
uninstall: $(addprefix uninstall-, $(STDLIBS_EXT))
extstdlibclean:
Expand Down