summaryrefslogtreecommitdiff
path: root/Build/source/texk/web2c/euptexdir/am/euptex.am
blob: 84c55e4b57b50bc5182bca0b7d0b5e913deef354 (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
## texk/web2c/euptexdir/am/euptex.am: Makefile fragment for e-upTeX.
##
## Copyright (C) 2011-2015 Peter Breitenlohner <tex-live@tug.org>
## You may freely use, modify and/or distribute this file.

## e-upTeX
##
if EUPTEX
bin_PROGRAMS += euptex
endif EUPTEX
EXTRA_PROGRAMS += euptex

euptex_CPPFLAGS = $(PTEXENC_INCLUDES) $(AM_CPPFLAGS) -I$(srcdir)/libmd5

# With --enable-ipc, e-upTeX may need to link with -lsocket.
euptex_LDADD = libukanji.a $(pproglib) $(PTEXENC_LIBS) $(LDADD) $(ipc_socketlibs) libmd5.a
euptex_DEPENDENCIES = libukanji.a $(pproglib) $(PTEXENC_DEPEND) $(default_dependencies) libmd5.a

# e-upTeX C sources
euptex_c_h = euptexini.c euptex0.c euptexcoerce.h euptexd.h
nodist_euptex_SOURCES = $(euptex_c_h) euptex-pool.c
dist_euptex_SOURCES = euptexdir/euptexextra.c euptexdir/euptexextra.h

# We must create euptexd.h and [eu]ptexdir/[eu]ptex_version.h before building the euptex_OBJECTS.
euptex_prereq = euptexd.h etexdir/etex_version.h ptexdir/ptex_version.h \
	eptexdir/eptex_version.h uptexdir/uptex_version.h
$(euptex_OBJECTS): $(euptex_prereq)

$(euptex_c_h): euptex-web2c
	@$(web2c) euptex
euptex-web2c: euptex.p $(web2c_texmf) euptexdir/euptex.defines
	@$(web2c) euptex

euptex-pool.c: euptex.pool euptexd.h $(makecpool_stamp)
	$(makecpool) euptex >$@ || rm -f $@

# Tangling e-upTeX
euptex.p euptex.pool: euptex-tangle
	@$(texmf_tangle) euptex euptex
euptex-tangle: tangle$(EXEEXT) euptex.web euptex.ch tangle-sh
	@$(texmf_tangle) euptex euptex

# Generate euptex.web
euptex.web: tie$(EXEEXT) $(euptex_web_srcs)
	$(tie_m) $(euptex_web_srcs)
euptex_web_srcs = \
	tex.web \
	etexdir/etex.ch \
	etexdir/tex.ch0 \
	tex.ch \
	etexdir/tex.ech

# Generate euptex.ch
euptex.ch: tie$(EXEEXT) euptex.web $(euptex_ch_srcs)
	$(tie_c) euptex.web $(euptex_ch_srcs)
euptex_ch_srcs = \
	eptexdir/etex.ch0 \
	ptexdir/ptex-base.ch \
	uptexdir/uptex-m.ch \
	euptexdir/euptex.ch0 \
	eptexdir/eptex.ech \
	euptexdir/euptex.ch1 \
	eptexdir/etex.ch1 \
	$(euptex_ch_synctex) \
	eptexdir/fam256.ch \
	euptexdir/pdfstrcmp-eup-pre.ch \
	eptexdir/pdfutils.ch \
	euptexdir/pdfstrcmp-eup-post.ch \
	tex-binpool.ch

EXTRA_DIST += $(euptex_web_srcs) $(euptex_ch_srcs) euptexdir/euptex.defines

DISTCLEANFILES += $(nodist_euptex_SOURCES) euptex.web euptex.ch euptex-web2c \
	euptex.p euptex.pool euptex-tangle

##
EXTRA_DIST += \
	euptexdir/COPYRIGHT \
	euptexdir/COPYRIGHT.jis \
	euptexdir/ChangeLog \
	euptexdir/EUPTEX.txt

# e-upTeX Tests
#
euptex_tests = euptexdir/euptriptest.test euptexdir/pdfprimitive.test
euptexdir/euptriptest.log: euptex$(EXEEXT) dvitype$(EXEEXT) pltotf$(EXEEXT) tftopl$(EXEEXT)
euptexdir/pdfprimitive.log: euptex$(EXEEXT)

EXTRA_DIST += $(euptex_tests)

if EUPTEX
TESTS += $(euptex_tests)
TRIPTRAP += euptrip.diffs
TRIPTRAP_CLEAN += euptrip-clean
endif EUPTEX

## Test data and results
##
## euptexdir/euptriptest.test
EXTRA_DIST += \
	eptexdir/eptrip/eptrip.log \
	eptexdir/eptrip/eptrip.tex \
	euptexdir/euptrip/euptrip.diffs \
	euptexdir/euptrip/texmf.cnf
euptrip.diffs: euptex$(EXEEXT) dvitype$(EXEEXT) pltotf$(EXEEXT) tftopl$(EXEEXT)
	$(triptrap_diffs) $@
.PHONY: euptrip-clean
euptrip-clean:
	rm -rf euptripdir
DISTCLEANFILES += euptrip.diffs
## euptexdir/pdfprimitive.test
EXTRA_DIST += \
	euptexdir/pdfprimitive.test \
	eptexdir/tests/pdfprimitive-test.tex \
	euptexdir/tests/pdfprimitive-euptex.log
DISTCLEANFILES += pdfprimitive-euptex.*