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
151
152
153
154
155
156
157
|
dnl Process this file with autoconf to produce a configure script.
dnl
dnl Copyright (C) 2009 Peter Breitenlohner <tex-live@tug.org>
dnl
dnl This file is free software; the copyright holder
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
dnl
AC_INIT([TeX Live], [2009-11-10], [tex-k@tug.org])
AC_PREREQ([2.63])
AC_CONFIG_SRCDIR([m4/kpse-pkgs.m4])
AC_CONFIG_AUX_DIR([build-aux])
AC_CONFIG_MACRO_DIR([m4])
dnl ## ------------------------------------------- ##
dnl ## Setup of the TeX Live (TL) infrastructure ##
dnl ## done in ./, libs/, utils/, and texk/ ##
dnl ## ------------------------------------------- ##
dnl
dnl 1. Define three lists of TeXk programs, utility programs,
dnl and TL libraries. These list occur nowhere else.
dnl
dnl 2. For each program Prog in the list of utility programs:
dnl sinclude utils/Prog/ac/withenable.ac
dnl providing the configure option --disable-Prog or --enable-Prog
dnl if Prog is to be built:
dnl set need_Lib=yes for each required TL library Lib (if any)
dnl
dnl 3. For each program Prog in the list of TeXk programs:
dnl sinclude texk/Prog/ac/withenable.ac
dnl providing the configure option --disable-Prog or --enable-Prog
dnl if Prog is to be built:
dnl set need_Lib=yes for each required TL library Lib (if any)
dnl
dnl 4. Sinclude texk/kpathsea/ac/withenable.ac
dnl
dnl 5. For each library Lib in the list of TL libraries:
dnl sinclude libs/Lib/ac/withenable.ac
dnl usually providing the configure options --with-system-Lib,
dnl --with-Lib-includes=DIR, and --with-Lib-libdir=DIR
dnl for each required TL library SubLib (if any):
dnl disallow with_system_Lib=yes and with_system_SubLib=no
dnl
KPSE_SETUP([])
dnl Common code for all programs using libkpathsea.
KPSE_COMMON([TeX Live top-level], [dist-xz])
KPSE_CANONICAL_HOST
AC_PATH_XTRA
AC_PROG_CXX
AC_PROG_LN_S
AC_ARG_WITH([ln-s],
AS_HELP_STRING([--without-ln-s],
[do build even if `ln -s' does not work]))[]dnl
if test "x$LN_S" != "xln -s" && test "x$with_ln_s" != xno; then
AC_MSG_ERROR([You could use `--without-ln-s' to build without working `ln -s'])
fi
if test "x$mandir" = 'x${datarootdir}/man'; then
mandir='${prefix}/texmf/doc/man'
ac_configure_args="$ac_configure_args '--mandir=$mandir'"
fi
if test "x$infodir" = 'x${datarootdir}/info'; then
infodir='${prefix}/texmf/doc/info'
ac_configure_args="$ac_configure_args '--infodir=$infodir'"
fi
dnl Although quite unusual, it is possible to build Web2C (TeX & Co)
dnl using installed (system) kpathsea headers and library.
dnl In that case we need the location of <kpathsea/paths.h>.
if test "x$enable_web2c" = xyes && test "x$with_system_kpathsea" = xyes; then
if test "x$with_kpathsea_includes" = x; then
list="/usr/include /usr/local/include"
else
list=$with_kpathsea_includes
fi
found=no
for ac_dir in $list; do
if test -r "$ac_dir/kpathsea/paths.h"; then
found=yes
break
fi
done
if test "x$found" = xno; then
AC_MSG_NOTICE([You requested to build `web2c' using an installed `kpathsea' version,])
AC_MSG_NOTICE([ which requires to locate the <kpathsea/paths.h> header file.])
AC_MSG_ERROR([Sorry, not found under any of: $list *****])
fi
fi
dnl We check that all required system libraries are usable, and may
dnl reduce frustration if anything is wrong by doing this first.
dnl A native TeX Live build must not use any system libraries.
KPSE_SAVE_FLAGS
syslib_status=yes
syslib_used=no
KPSE_ALL_SYSTEM_FLAGS
KPSE_FOR_PKGS([syslib],
[m4_sinclude(m4_if(Kpse_Pkg, [kpathsea], [texk/],
[libs/])Kpse_Pkg[/ac/]Kpse_Pkg[.ac])])[]dnl
if test "x$syslib_status" = xno; then
AC_MSG_ERROR([some requested system libraries failed])
fi
if test "x$syslib_used:$enable_native_texlive_build" = xyes:yes; then
AC_MSG_ERROR([you can not use system libraries for a native TeX Live build])
fi
KPSE_RESTORE_FLAGS
AM_CONDITIONAL([build_kpathsea],
[test "x$need_kpathsea" = xyes && test "x$with_system_kpathsea" != xyes])
AC_CONFIG_SUBDIRS([auxdir/auxsub texk/kpathsea libs utils texk])
AC_CONFIG_FILES([Makefile])
AC_OUTPUT
dnl Most probably we need GNU make.
if test -z "`${MAKE-make} -v 2>/dev/null | grep GNU`"; then
if test "x$enable_native_texlive_build" = xno; then
AC_MSG_WARN([Building TeX Live may require GNU make])
else
AC_MSG_ERROR([Building TeX Live requires GNU make])
fi
fi
AS_IF([test "x$cross_compiling" = xyes],
[msg_compiling="cross-compiling on $build_alias for $host_alias"],
[msg_compiling="compiling for $kpse_build_alias"])
kpse_bld=`pwd`
kpse_src=`cd "$srcdir" && pwd`
msg_compiling="$msg_compiling
in $kpse_bld"
test "x$srcdir" = x. || msg_compiling="$msg_compiling
from sources in $kpse_src"
AC_MSG_RESULT([
** Configuration summary for $PACKAGE_STRING:
$msg_compiling])
case $kpse_bld$kpse_bld in
*' '*) AC_MSG_ERROR([Absolute source and/or build path with embedded spaces]);;
esac
AC_MSG_RESULT([
prefix: $prefix
enable_native_texlive_build: $enable_native_texlive_build
enable_shared: $enable_shared
enable_multiplatform: $enable_multiplatform
enable_cxx_runtime_hack: $enable_cxx_runtime_hack
enable_libtool_hack: $enable_libtool_hack
enable_compiler_warnings: $enable_compiler_warnings
** Next run `make' to configure and build each library and program.
])
|