summaryrefslogtreecommitdiff
path: root/Build/source/m4/kpse-pkgs.m4
blob: 1ad77724c16c6df127333d9e6f0e0dfa6b6018e5 (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
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
# Private macros for the TeX Live (TL) tree.
# Copyright (C) 2009-2012 Peter Breitenlohner <tex-live@tug.org>
#
# This file is free software; the copyright holder
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.

## ------------------------------ ##
## Define lists of sub-packages.  ##
## ------------------------------ ##

# Hopefully these lists are defined here and nowhere else.
# Note: directories in these lists need not exist.

# KPSE_LIBS_PKGS()
# ----------------
# Define two lists of library sub-packages:
#   generic libraries, i.e., subdirs 'libs/*', that can be used by
#   utility and TeXk sub-packages
# and
#   TeX specific libraries, i.e., subdirs 'texk/*', that can only
#   be used by TeXk sub-packages and can't use generic libraries
# Each library must precede required other libraries (if any).
AC_DEFUN([KPSE_LIBS_PKGS],
[dnl generic libraries 'libs/*'
m4_define([kpse_libs_pkgs], [
harfbuzz
icu
teckit
graphite2
zziplib
xpdf
poppler
cairo
pixman
gd
freetype2
freetype
t1lib
libpng
zlib
])[]dnl
dnl TeX specific libraries
m4_define([kpse_texlibs_pkgs], [
ptexenc
kpathsea
])]) # KPSE_LIBS_PKGS

# KPSE_ALL_SYSTEM_FLAGS()
# -----------------------
# Generate flags for all potential system libraries available,
# only used at top-level.
AC_DEFUN([KPSE_ALL_SYSTEM_FLAGS],
[AC_REQUIRE([KPSE_LIBS_PREPARE])[]dnl
AC_REQUIRE([KPSE_KPATHSEA_SYSTEM_FLAGS])[]dnl
AC_REQUIRE([KPSE_PTEXENC_SYSTEM_FLAGS])[]dnl
AC_REQUIRE([KPSE_ZLIB_SYSTEM_FLAGS])[]dnl
AC_REQUIRE([KPSE_LIBPNG_SYSTEM_FLAGS])[]dnl
AC_REQUIRE([KPSE_T1LIB_SYSTEM_FLAGS])[]dnl
AC_REQUIRE([KPSE_FREETYPE_SYSTEM_FLAGS])[]dnl
AC_REQUIRE([KPSE_FREETYPE2_SYSTEM_FLAGS])[]dnl
AC_REQUIRE([KPSE_GD_SYSTEM_FLAGS])[]dnl
AC_REQUIRE([KPSE_PIXMAN_SYSTEM_FLAGS])[]dnl
AC_REQUIRE([KPSE_CAIRO_SYSTEM_FLAGS])[]dnl
AC_REQUIRE([KPSE_XPDF_SYSTEM_FLAGS])[]dnl
AC_REQUIRE([KPSE_POPPLER_SYSTEM_FLAGS])[]dnl
AC_REQUIRE([KPSE_ZZIPLIB_SYSTEM_FLAGS])[]dnl
AC_REQUIRE([KPSE_GRAPHITE2_SYSTEM_FLAGS])[]dnl
AC_REQUIRE([KPSE_TECKIT_SYSTEM_FLAGS])[]dnl
AC_REQUIRE([KPSE_ICU_SYSTEM_FLAGS])[]dnl
AC_REQUIRE([KPSE_HARFBUZZ_SYSTEM_FLAGS])[]dnl
]) # KPSE_ALL_SYSTEM_FLAGS

# KPSE_UTILS_PKGS()
# -----------------
# Define the list of utility sub-packages, i.e., subdirs 'utils/*'.
AC_DEFUN([KPSE_UTILS_PKGS],
[m4_define([kpse_utils_pkgs], [
biber
m-tx
pmx
ps2eps
psutils
t1utils
texdoctk
tpic2pdftex
vlna
xindy
xpdfopen
])]) # KPSE_UTILS_PKGS

# KPSE_TEXK_PKGS()
# ----------------
# Define the list of TeXk sub-packages, i.e., subdirs 'texk/*',
# excluding 'texk/kpathsea'.
AC_DEFUN([KPSE_TEXK_PKGS],
[m4_define([kpse_texk_pkgs], [
web2c
afm2pl
bibtex-x
chktex
cjkutils
detex
devnag
dtl
dvi2tty
dvidvi
dviljk
dvipdfmx
dvipng
dvipos
dvipsk
dvisvgm
gsftopk
lacheck
lcdf-typetools
makeindexk
makejvf
mendexk
ps2pkm
seetexk
tex4htk
ttf2pk
ttf2pk2
ttfdump
xdv2pdf
xdvik
xdvipdfmx
texlive
])]) # KPSE_TEXK_PKGS



## ------------------------------- ##
##  Loop over one of these lists.  ##
## ------------------------------- ##

# KPSE_FOR_PKGS(LIST, ACTION)
# ---------------------------
# Run the shell code ACTION for each element Kpse_Pkg in kpse_LIST_pkgs,
# with Kpse_pkg a sanitized version of Kpse_Pkg for shell variables and
# Kpse_PKG a sanitized (upper case) version for make variables.
AC_DEFUN([KPSE_FOR_PKGS],
[AC_REQUIRE([KPSE_LIBS_PKGS])AC_REQUIRE([KPSE_UTILS_PKGS])AC_REQUIRE([KPSE_TEXK_PKGS])[]dnl
AC_FOREACH([Kpse_Pkg], kpse_$1_pkgs,
[m4_pushdef([Kpse_pkg], AS_TR_SH(Kpse_Pkg))[]dnl
m4_pushdef([Kpse_PKG], AS_TR_CPP(Kpse_Pkg))[]dnl
$2
m4_popdef([Kpse_pkg])m4_popdef([Kpse_PKG])[]dnl
])]) # KPSE_FOR_PKGS