summaryrefslogtreecommitdiff
path: root/lang/julia/files/patch-Makefile
diff options
context:
space:
mode:
authorLi-Wen Hsu <lwhsu@FreeBSD.org>2018-09-06 20:57:01 +0000
committerLi-Wen Hsu <lwhsu@FreeBSD.org>2018-09-06 20:57:01 +0000
commit7a74aea9316f369994ea5d3d5098e2c412f7e48e (patch)
tree4fcfba0b3626055075ab8a85d3d970e0b2cafc41 /lang/julia/files/patch-Makefile
parentdevel/flang[-clang]: update to later snapshots (diff)
- Copy lang/julia to lang/julia06 and lang/julia07
- Update lang/julia07 to 0.7.0 - Update lang/julia to 0.1.0 PR: 230663 Submitted by: Iblis Lin <iblis@hs.ntnu.edu.tw> (maintainer)
Notes
Notes: svn path=/head/; revision=479160
Diffstat (limited to 'lang/julia/files/patch-Makefile')
-rw-r--r--lang/julia/files/patch-Makefile99
1 files changed, 53 insertions, 46 deletions
diff --git a/lang/julia/files/patch-Makefile b/lang/julia/files/patch-Makefile
index 2f6fb3598f50..326d5d9a3ddb 100644
--- a/lang/julia/files/patch-Makefile
+++ b/lang/julia/files/patch-Makefile
@@ -1,42 +1,59 @@
---- Makefile.orig 2018-07-09 19:17:10 UTC
+--- Makefile.orig 2018-08-02 19:21:47 UTC
+++ Makefile
-@@ -71,7 +71,6 @@ $(build_prefix)/.examples: $(wildcard $(JULIAHOME)/exa
- @mkdir -p $(build_docdir)/examples
- @cp -R $(JULIAHOME)/examples/*.jl $(build_docdir)/examples/
- @cp -R $(JULIAHOME)/examples/clustermanager $(build_docdir)/examples/
-- @cp -R $(JULIAHOME)/examples/embedding $(build_docdir)/examples
- @echo 1 > $@
-
- julia-symlink: julia-ui-$(JULIA_BUILD_MODE)
-@@ -96,7 +95,7 @@ julia-src-release julia-src-debug : julia-src-% : juli
- julia-ui-release julia-ui-debug : julia-ui-% : julia-src-%
- @$(MAKE) $(QUIET_MAKE) -C $(BUILDROOT)/ui julia-$*
-
--julia-inference : julia-base julia-ui-$(JULIA_BUILD_MODE) $(build_prefix)/.examples
-+julia-inference : julia-base julia-ui-$(JULIA_BUILD_MODE)
- @$(MAKE) $(QUIET_MAKE) -C $(BUILDROOT) $(build_private_libdir)/inference.ji JULIA_BUILD_MODE=$(JULIA_BUILD_MODE)
+@@ -266,24 +266,6 @@ endif
+ endif
+ endif
- ifneq ($(CPUID_SPECIFIC_BINARIES), 0)
-@@ -351,7 +350,7 @@ define stringreplace
+-# On FreeBSD, /lib/libgcc_s.so.1 is incompatible with Fortran; to use Fortran on FreeBSD,
+-# we need to link to the libgcc_s that ships with the same GCC version used by libgfortran.
+-# To work around this, we copy the GCC libraries we need, namely libgfortran, libgcc_s,
+-# and libquadmath, into our build library directory, $(build_libdir). We also add them to
+-# JL_PRIVATE_LIBS-0 so that they know where they need to live at install time.
+-ifeq ($(OS),FreeBSD)
+-define std_so
+-julia-deps: | $$(build_libdir)/$(1).so
+-$$(build_libdir)/$(1).so: | $$(build_libdir)
+- $$(INSTALL_M) $$(GCCPATH)/$(1).so* $$(build_libdir)
+-JL_PRIVATE_LIBS-0 += $(1)
+-endef
+-
+-$(eval $(call std_so,libgfortran))
+-$(eval $(call std_so,libgcc_s))
+-$(eval $(call std_so,libquadmath))
+-endif # FreeBSD
+-
+ ifeq ($(OS),WINNT)
+ define std_dll
+ julia-deps: | $$(build_bindir)/lib$(1).dll $$(build_depsbindir)/lib$(1).dll
+@@ -316,8 +298,7 @@ define stringreplace
$(build_depsbindir)/stringreplace $$(strings -t x - $1 | grep '$2' | awk '{print $$1;}') '$3' 255 "$(call cygpath_w,$1)"
endef
-install: $(build_depsbindir)/stringreplace $(BUILDROOT)/doc/_build/html/en/index.html
+- @$(MAKE) $(QUIET_MAKE) all
+install: $(build_depsbindir)/stringreplace
- @$(MAKE) $(QUIET_MAKE) all
- @for subdir in $(bindir) $(datarootdir)/julia/site/$(VERSDIR) $(docdir) $(man1dir) $(includedir)/julia $(libdir) $(private_libdir) $(sysconfdir); do \
+ @for subdir in $(bindir) $(datarootdir)/julia/stdlib/$(VERSDIR) $(docdir) $(man1dir) $(includedir)/julia $(libdir) $(private_libdir) $(sysconfdir); do \
mkdir -p $(DESTDIR)$$subdir; \
-@@ -396,9 +395,6 @@ endif
+ done
+@@ -359,10 +340,6 @@ endif
+ fi \
+ done \
+ done
+- for suffix in $(JL_PRIVATE_LIBS-1) ; do \
+- lib=$(build_private_libdir)/$${suffix}.$(SHLIB_EXT); \
+- $(INSTALL_M) $$lib $(DESTDIR)$(private_libdir) ; \
+- done
+ endif
+
+ # Copy public headers
+@@ -376,24 +353,11 @@ endif
$(INSTALL_M) $(JULIAHOME)/contrib/build_sysimg.jl $(DESTDIR)$(datarootdir)/julia/
# Copy in all .jl sources as well
cp -R -L $(build_datarootdir)/julia $(DESTDIR)$(datarootdir)/
- # Copy documentation
-- cp -R -L $(build_docdir)/* $(DESTDIR)$(docdir)/
- cp -R -L $(BUILDROOT)/doc/_build/html $(DESTDIR)$(docdir)/
- # Remove perf suite
- -rm -rf $(DESTDIR)$(datarootdir)/julia/test/perf/
# Remove various files which should not be installed
-@@ -406,51 +402,43 @@ endif
+ -rm -f $(DESTDIR)$(datarootdir)/julia/base/version_git.sh
-rm -f $(DESTDIR)$(datarootdir)/julia/test/Makefile
# Copy in beautiful new man page
$(INSTALL_F) $(build_man1dir)/julia.1 $(DESTDIR)$(man1dir)/
@@ -50,29 +67,23 @@
- # Install appdata file
- mkdir -p $(DESTDIR)$(datarootdir)/appdata/
- $(INSTALL_F) $(JULIAHOME)/contrib/julia.appdata.xml $(DESTDIR)$(datarootdir)/appdata/
-
-- # Update RPATH entries and JL_SYSTEM_IMAGE_PATH if $(private_libdir_rel) != $(build_private_libdir_rel)
--ifneq ($(private_libdir_rel),$(build_private_libdir_rel))
-+ # Update RPATH entries and JL_SYSTEM_IMAGE_PATH if $(libdir_rel) != $(private_libdir_rel)
-+ifneq ($(libdir_rel),$(private_libdir_rel))
+-
+ # Update RPATH entries and JL_SYSTEM_IMAGE_PATH if $(private_libdir_rel) != $(build_private_libdir_rel)
+ ifneq ($(private_libdir_rel),$(build_private_libdir_rel))
ifeq ($(OS), Darwin)
- for julia in $(DESTDIR)$(bindir)/julia* ; do \
- install_name_tool -rpath @executable_path/$(build_private_libdir_rel) @executable_path/$(private_libdir_rel) $$julia; \
- install_name_tool -add_rpath @executable_path/$(build_libdir_rel) @executable_path/$(libdir_rel) $$julia; \
+@@ -403,7 +367,7 @@ ifeq ($(OS), Darwin)
done
--else ifneq (,$(findstring $(OS),Linux FreeBSD))
-+else
- for julia in $(DESTDIR)$(bindir)/julia* ; do \
-- patchelf --set-rpath '$$ORIGIN/$(private_libdir_rel):$$ORIGIN/$(libdir_rel)' $$julia; \
-+ patchelf --set-rpath '$(GCCPATH):$$ORIGIN/$(private_libdir_rel):$$ORIGIN/$(libdir_rel)' $$julia; \
+ else ifneq (,$(findstring $(OS),Linux FreeBSD))
+ for j in $(JL_TARGETS) ; do \
+- patchelf --set-rpath '$$ORIGIN/$(private_libdir_rel):$$ORIGIN/$(libdir_rel)' $(DESTDIR)$(bindir)/$$j; \
++ patchelf --set-rpath '$(GCCPATH):$$ORIGIN/$(private_libdir_rel):$$ORIGIN/$(libdir_rel)' $(DESTDIR)$(bindir)/$$j; \
done
endif
--
-- # Overwrite JL_SYSTEM_IMAGE_PATH in julia library
-- $(call stringreplace,$(DESTDIR)$(libdir)/libjulia.$(SHLIB_EXT),sys.$(SHLIB_EXT)$$,$(private_libdir_rel)/sys.$(SHLIB_EXT))
-- $(call stringreplace,$(DESTDIR)$(libdir)/libjulia-debug.$(SHLIB_EXT),sys-debug.$(SHLIB_EXT)$$,$(private_libdir_rel)/sys-debug.$(SHLIB_EXT))
+
+@@ -414,22 +378,24 @@ ifeq ($(BUNDLE_DEBUG_LIBS),1)
endif
+ endif
- # On FreeBSD, remove the build's libdir from each library's RPATH
-ifeq ($(OS),FreeBSD)
- $(JULIAHOME)/contrib/fixup-rpath.sh $(build_depsbindir)/patchelf $(DESTDIR)$(libdir) $(build_libdir)
@@ -94,10 +105,6 @@
+ # Copy documentation
+ cp -R -L $(BUILDROOT)/doc/_build/html $(DESTDIR)$(docdir)/
+
-+install-examples:
-+ mkdir -p $(DESTDIR)$(datarootdir)/examples/julia/
-+ cp -R -L $(JULIAHOME)/examples/* $(DESTDIR)$(datarootdir)/examples/julia/
-+
+install-desktop:
+ # Copy icon and .desktop file
+ mkdir -p $(DESTDIR)$(datarootdir)/icons/hicolor/scalable/apps/