summaryrefslogtreecommitdiff
path: root/Build/source/texk/texlive/Makefile.in
blob: baa63f1c88c8e113850c6e878b97fb591cc59548 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
# $Id$
# @configure_input@
# Makefile for texlive's extra scripts.
# Public domain.

kpse_include ../make/paths.mk
kpse_include ../make/common.mk
kpse_include ../make/programs.mk

# Copies of these scripts exist in /source/live_scripts/ for the sake
# of avoiding dangling links produced by Build; the instances
# in texmf are the masters (except when it is CTAN).
LINKED_SCRIPTS = \
  texmf/scripts/a2ping/a2ping.pl \
  texmf/scripts/epstopdf/epstopdf.pl \
  texmf/scripts/pkfix/pkfix.pl \
  texmf/scripts/ps2eps/ps2eps.pl \
  texmf/scripts/simpdftex/simpdftex \
  texmf/scripts/tetex/e2pall.pl \
  texmf/scripts/tetex/texdoctk.pl \
  texmf/scripts/texlive/getnonfreefonts.pl \
  texmf/scripts/texlive/rungs.tlu \
  texmf/scripts/texlive/texdoc.tlu \
  texmf/scripts/texlive/tlmgr.pl \
  texmf-dist/scripts/bengali/ebong.py \
  texmf-dist/scripts/dviasm/dviasm.py \
  texmf-dist/scripts/glossaries/makeglossaries \
  texmf-dist/scripts/mkjobtexmf/mkjobtexmf.pl \
  texmf-dist/scripts/oberdiek/pdfatfi.pl \
  texmf-dist/scripts/pdfcrop/pdfcrop.pl \
  texmf-dist/scripts/perltex/perltex.pl \
  texmf-dist/scripts/ppower4/pdfthumb.texlua \
  texmf-dist/scripts/ppower4/ppower4.texlua \
  texmf-dist/scripts/pst-pdf/ps4pdf \
  texmf-dist/scripts/texcount/TeXcount.pl \
  texmf-dist/scripts/thumbpdf/thumbpdf.pl \
  texmf-dist/scripts/vpe/vpe.pl \
  texmf-dist/scripts/context/ruby/texmfstart.rb \
  texmf-dist/scripts/context/stubs/unix/context \
  texmf-dist/scripts/context/stubs/unix/ctxtools \
  texmf-dist/scripts/context/stubs/unix/exatools \
  texmf-dist/scripts/context/stubs/unix/luatools \
  texmf-dist/scripts/context/stubs/unix/makempy \
  texmf-dist/scripts/context/stubs/unix/mpstools \
  texmf-dist/scripts/context/stubs/unix/mptopdf \
  texmf-dist/scripts/context/stubs/unix/mtxrun \
  texmf-dist/scripts/context/stubs/unix/mtxtools \
  texmf-dist/scripts/context/stubs/unix/pdftools \
  texmf-dist/scripts/context/stubs/unix/pdftrimwhite \
  texmf-dist/scripts/context/stubs/unix/pstopdf \
  texmf-dist/scripts/context/stubs/unix/rlxtools \
  texmf-dist/scripts/context/stubs/unix/runtools \
  texmf-dist/scripts/context/stubs/unix/texexec \
  texmf-dist/scripts/context/stubs/unix/texfind \
  texmf-dist/scripts/context/stubs/unix/texfont \
  texmf-dist/scripts/context/stubs/unix/texshow \
  texmf-dist/scripts/context/stubs/unix/textools \
  texmf-dist/scripts/context/stubs/unix/texutil \
  texmf-dist/scripts/context/stubs/unix/tmftools \
  texmf-dist/scripts/context/stubs/unix/xmltools \

manpgs = getnonfreefonts getnonfreefonts-sys

all:
default: all

install: install-data install-exec

# Auxiliary files.
install-data::
	for p in $(manpgs); do \
	  $(INSTALL_DATA) $(srcdir)/$$p.man $(man1dir)/$$p.$(manext); \
	done

# The idea is to install the scripts themselves in texmf*/scripts, and
# have bin/arch/foo be a symlink to, say,
# ../../texmf/scripts/foo/foo.pl.  That way we save a bit of disk space,
# but more importantly omit duplication, and most importantly make it
# possible to invoke the same Perl script on Windows (via
# tl-w32-wrapper.texlua).
# 
# The installation into texmf*/scripts is ideally done with ctan2tl.
# The copy of the texlua wrapper for Windows is also done by hand, but
# could/should also be done by ctan2tl.  The check-wrapper-consistency
# script at least checks after the fact for problems.
# 
# We also keep a copy of all the scripts here, in the linked_scripts
# subdirectory, and install from there into the runtime.  This is purely
# for other distro builders, so symlinks are not dangling in the
# inst/bin dir (it is meaningless in native TL).  We have not yet
# written the auto-update to ensure linked_scripts is actually up to
# date with the masters in Master/texmf*/script, but it will happen.
# 
# By the way, $(scriptdir) here is the binary directory, e.g.,
# bin/i386-linux, not the texmf*/scripts dir.
# 
install-exec:
	-$(SHELL) $(srcdir)/../mkinstalldirs $(scriptdir)
# - link to the basename, removing any extension, of the source.
# - we downcase for the sake of TeXcount.pl -> texcount.
# - the purpose of the case..esac is to support both multiplatform and
#   non-multiplatform builds.
	for s in $(LINKED_SCRIPTS); do \
	  target=$(scriptdir)/`basename $$s | sed 's,\.[^/]*$$,,' | tr '[A-Z]' '[a-z]'`; \
	  target=$$target; \
	  rm -f $$target; \
	  case "$(scriptdir)" in \
	    */bin)   d=..;; \
	    */bin/*) d=../..;; \
	    *) echo "$(scriptdir): strange directory for linked scripts" >&2;\
	      exit 1;; \
	  esac; \
	  $(SHELL) $(srcdir)/../mkinstalldirs $(prefix)/`dirname $$s`; \
	  $(INSTALL_SCRIPT) $(srcdir)/linked_scripts/`basename $$s` $(prefix)/$$s; \
	  ln -s $$d/$$s $$target; \
	done
	rm -f $(scriptdir)/getnonfreefonts-sys
	ln -s getnonfreefonts $(scriptdir)/getnonfreefonts-sys

kpse_include ../make/clean.mk

config.status: $(srcdir)/configure
	$(SHELL) $(srcdir)/configure --no-create --verbose

Makefile: $(srcdir)/Makefile.in config.status
	$(SHELL) config.status

depend:
check: