summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2020-05-28 22:03:59 +0000
committerKarl Berry <karl@freefriends.org>2020-05-28 22:03:59 +0000
commit030005d0c8d0434c0c00a481799634ad045a6449 (patch)
treeb5ee729f13b79c2d9af50940e91513ebf7919165
parentc88a7b89c9b0fb65a94c28f07ba277decc224f74 (diff)
do not run texlinks if it is not installed
git-svn-id: svn://tug.org/texlive/trunk@55329 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Build/source/ChangeLog6
-rw-r--r--Build/source/Makefile.am7
-rw-r--r--Build/source/Makefile.in7
-rw-r--r--Build/source/texk/texlive/tl_support/ChangeLog12
-rw-r--r--Build/source/texk/texlive/tl_support/Makefile.am21
-rw-r--r--Build/source/texk/texlive/tl_support/Makefile.in15
6 files changed, 48 insertions, 20 deletions
diff --git a/Build/source/ChangeLog b/Build/source/ChangeLog
index f3a4c2278c5..96ca08c2888 100644
--- a/Build/source/ChangeLog
+++ b/Build/source/ChangeLog
@@ -1,3 +1,9 @@
+2020-05-28 Karl Berry <karl@freefriends.org>
+
+ * Makefile.am (world): do not descend into $(texlinks_dir) if it
+ doesn't exist. Report from Andreas Scherer,
+ https://tug.org/pipermail/tlbuild/2020q1/004614.html.
+
2020-05-14 Karl Berry <karl@freefriends.org>
* reautoconf for removal of poppler support.
diff --git a/Build/source/Makefile.am b/Build/source/Makefile.am
index 729fc8beb68..7db6b6b5136 100644
--- a/Build/source/Makefile.am
+++ b/Build/source/Makefile.am
@@ -53,8 +53,11 @@ world: all
@echo "top-level make $@: running install-strip..."
$(MAKE) $(AM_MAKEFLAGS) install-strip
#
- @echo "top-level make $@: making run-texlinks in $(texlinks_dir) ..."
- cd $(texlinks_dir) && $(MAKE) $(AM_MAKEFLAGS) run-texlinks
+# Just in case it's not a full checkout.
+ if test -d "$(texlinks_dir)"; then \
+ echo "top-level make $@: making run-texlinks in $(texlinks_dir) ..."; \
+ cd $(texlinks_dir) && $(MAKE) $(AM_MAKEFLAGS) run-texlinks; \
+ else :; fi
#
@echo "top-level make $@: running $(check_target)..."
$(MAKE) $(AM_MAKEFLAGS) $(check_target)
diff --git a/Build/source/Makefile.in b/Build/source/Makefile.in
index 4bc4cc11296..bb4be69d7f6 100644
--- a/Build/source/Makefile.in
+++ b/Build/source/Makefile.in
@@ -1044,8 +1044,11 @@ world: all
@echo "top-level make $@: running install-strip..."
$(MAKE) $(AM_MAKEFLAGS) install-strip
#
- @echo "top-level make $@: making run-texlinks in $(texlinks_dir) ..."
- cd $(texlinks_dir) && $(MAKE) $(AM_MAKEFLAGS) run-texlinks
+# Just in case it's not a full checkout.
+ if test -d "$(texlinks_dir)"; then \
+ echo "top-level make $@: making run-texlinks in $(texlinks_dir) ..."; \
+ cd $(texlinks_dir) && $(MAKE) $(AM_MAKEFLAGS) run-texlinks; \
+ else :; fi
#
@echo "top-level make $@: running $(check_target)..."
$(MAKE) $(AM_MAKEFLAGS) $(check_target)
diff --git a/Build/source/texk/texlive/tl_support/ChangeLog b/Build/source/texk/texlive/tl_support/ChangeLog
index dd8bb62b818..2db19b13364 100644
--- a/Build/source/texk/texlive/tl_support/ChangeLog
+++ b/Build/source/texk/texlive/tl_support/ChangeLog
@@ -1,3 +1,15 @@
+2020-05-28 Karl Berry <karl@freefriends.org>
+
+ * Makefile.am (run-texlinks): do nothing if the texlinks script
+ or the needed fmtutil.cnf do not exist or are empty files. This
+ can happen with, e.g., --disable-texlive.
+ (texlinks_fmtutil): new variable for fmtutil.cnf location.
+ ($(DESTDIR)$(bindir)/texlinks,
+ $(DESTDIR)$(web2cdir)/fmtutil.cnf): remove targets, since we check
+ explicitly for the files now. make install must be run first.
+ Report from Andreas Scherer,
+ https://tug.org/pipermail/tlbuild/2020q1/004614.html.
+
2020-01-31 Karl Berry <karl@freefriends.org>
* mktexlsr.1,
diff --git a/Build/source/texk/texlive/tl_support/Makefile.am b/Build/source/texk/texlive/tl_support/Makefile.am
index d37a03ca878..06593ac5e8d 100644
--- a/Build/source/texk/texlive/tl_support/Makefile.am
+++ b/Build/source/texk/texlive/tl_support/Makefile.am
@@ -79,18 +79,23 @@ xfmtutil.1: fmtutil.help2man $(tl_scripts_dir)/fmtutil.pl
## fmtutil.cnf file to use for the sake of distro builds.
## We pass along the executable extension for the sake of cygwin, so we
## don't create dangling symlinks there (even though they work).
-#
+##
+## The texlinks script is installed by ../linked_scripts/Makefile[.am].
+## If it doesn't exist, e.g., if --disable-texlive was given, do nothing here.
+## So we do not specify make-level dependencies, but instead check if
+## the texlinks file (normally a symlink) and fmtutil.cnf exist.
+##
texlinks_prog = $(DESTDIR)$(bindir)/texlinks
+texlinks_fmtutil = $(DESTDIR)$(web2cdir)/fmtutil.cnf
#
run_texlinks = $(texlinks_prog) -v \
- -f $(DESTDIR)$(web2cdir)/fmtutil.cnf \
+ -f $(texlinks_fmtutil) \
-e "$(EXEEXT)" $(DESTDIR)$(bindir)
#
-run-texlinks: $(DESTDIR)$(bindir)/texlinks
+run-texlinks:
if !WIN32
- PATH="$(DESTDIR)$(bindir):$(PATH)"; export PATH; $(run_texlinks)
+ if test -s $(texlinks_prog) && test -s $(texlinks_fmtutil); then \
+ echo "running texlinks in `pwd` via: $(run_texlinks)"; \
+ PATH="$(DESTDIR)$(bindir):$(PATH)"; export PATH; $(run_texlinks); \
+ else :; fi
endif !WIN32
-#
-$(DESTDIR)$(bindir)/texlinks: $(DESTDIR)$(web2cdir)/fmtutil.cnf
-$(DESTDIR)$(web2cdir)/fmtutil.cnf:
- $(MAKE) $(AM_MAKEFLAGS) install
diff --git a/Build/source/texk/texlive/tl_support/Makefile.in b/Build/source/texk/texlive/tl_support/Makefile.in
index 5258464cb93..f1ebfda1a9f 100644
--- a/Build/source/texk/texlive/tl_support/Makefile.in
+++ b/Build/source/texk/texlive/tl_support/Makefile.in
@@ -287,11 +287,11 @@ dist_web2c_DATA = fmtutil.cnf
EXTRA_DIST = updmap.help2man fmtutil.help2man
Master_dir = $(top_srcdir)/../../../../Master
tl_scripts_dir = $(Master_dir)/texmf-dist/scripts/texlive
-#
texlinks_prog = $(DESTDIR)$(bindir)/texlinks
+texlinks_fmtutil = $(DESTDIR)$(web2cdir)/fmtutil.cnf
#
run_texlinks = $(texlinks_prog) -v \
- -f $(DESTDIR)$(web2cdir)/fmtutil.cnf \
+ -f $(texlinks_fmtutil) \
-e "$(EXEEXT)" $(DESTDIR)$(bindir)
all: all-am
@@ -696,12 +696,11 @@ xfmtutil.1: fmtutil.help2man $(tl_scripts_dir)/fmtutil.pl
.PHONY: run-texlinks
#
-run-texlinks: $(DESTDIR)$(bindir)/texlinks
-@WIN32_FALSE@ PATH="$(DESTDIR)$(bindir):$(PATH)"; export PATH; $(run_texlinks)
-#
-$(DESTDIR)$(bindir)/texlinks: $(DESTDIR)$(web2cdir)/fmtutil.cnf
-$(DESTDIR)$(web2cdir)/fmtutil.cnf:
- $(MAKE) $(AM_MAKEFLAGS) install
+run-texlinks:
+@WIN32_FALSE@ if test -s $(texlinks_prog) && test -s $(texlinks_fmtutil); then \
+@WIN32_FALSE@ echo "running texlinks in `pwd` via: $(run_texlinks)"; \
+@WIN32_FALSE@ PATH="$(DESTDIR)$(bindir):$(PATH)"; export PATH; $(run_texlinks); \
+@WIN32_FALSE@ else :; fi
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.