Sync
[ntk/apt.git] / configure.in
1 ad
2 dnl Process this file with autoconf to produce a configure script.
3 dnl The ONLY thing this is used for is to configure for different
4 dnl linux architectures and configurations, it is not used to make the
5 dnl code more portable
6
7 dnl You MUST have an environment that has all the POSIX functions and
8 dnl some of the more populare bsd/sysv ones (like select). You'll also
9 dnl need a C++ compiler that is semi-standard conformant, exceptions are
10 dnl not used but STL is.
11
12 dnl 'make -f Makefile startup' will generate the configure file from
13 dnl configure.in correctly and can be run at any time
14
15 AC_INIT(configure.in)
16 AC_CONFIG_AUX_DIR(buildlib)
17 AC_CONFIG_HEADER(include/config.h:buildlib/config.h.in)
18
19 dnl -- SET THIS TO THE RELEASE VERSION --
20 AC_DEFINE_UNQUOTED(VERSION,"0.3.0")
21 AC_DEFINE_UNQUOTED(PACKAGE,"apt")
22
23 dnl Tom's host stuff
24 tl_CHECK_TOOL_PREFIX dnl Initial guess
25
26 dnl Check our C compiler
27 tl_PROG_CC
28 AC_ISC_POSIX
29
30 dnl Check the host arch (build+target not needed... yet)
31 tl_CANONICAL_HOST
32 tl_CHECK_TOOL_PREFIX dnl recheck, in case the initial guess was wrong
33
34 dnl Check for other programs
35 tl_PROG_CXX
36 AC_LANG_CPLUSPLUS
37
38 dnl Checks for X11
39 AC_PATH_X
40 AC_PATH_XTRA
41 AC_SUBST(X11LIB)
42 X11LIB=
43 if test "$no_x" != "yes"; then
44 X11LIB="-lX11"
45 AC_DEFINE(HAVE_X11)
46 dnl Checks for ZPM
47 AC_CHECK_LIB(Xpm, XpmLibraryVersion,[AC_DEFINE(HAVE_LIBXPM) XPMLIB="-lXpm"],,$X_LIBS $X_PRE_LIBS $X11LIB $X_EXTRA_LIBS)
48 AC_SUBST(XPMLIB)
49 if test "$XPMLIB" != "-lXpm"; then
50 AC_MSG_ERROR(failed: I need xpm if you are building for X)
51 fi
52 fi
53
54 dnl Checks for Slang
55 AC_CHECK_LIB(slang, SLang_Version,[AC_DEFINE(HAVE_LIBSLANG) SLANGLIB="-lslang"])
56 AC_SUBST(SLANGLIB)
57
58 dnl Checks for GPM
59 AC_ARG_WITH(gpm,[ --without-gpm do not use GPM mouse support])
60 if test "$with_gpm" != "no"; then
61 AC_CHECK_LIB(gpm, Gpm_Open,[AC_DEFINE(HAVE_LIBGPM) GPMLIB="-lgpm"])
62 AC_SUBST(GPMLIB)
63 fi
64
65 dnl Checks for pthread
66 AC_CHECK_LIB(pthread, pthread_create,[AC_DEFINE(HAVE_PTHREAD) PTHREADLIB="-lpthread"])
67 AC_SUBST(PTHREADLIB)
68 if test "$PTHREADLIB" != "-lpthread"; then
69 AC_MSG_ERROR(failed: I need posix threads, pthread)
70 fi
71
72 dnl Converts the ARCH to be the same as dpkg
73 AC_MSG_CHECKING(system architecture)
74 archset="`awk '$1 == "'$host_cpu'" { print $2 }' $srcdir/buildlib/archtable`"
75 if test "x$archset" = "x"; then
76 AC_MSG_ERROR(failed: use --host=)
77 fi
78 AC_MSG_RESULT($archset)
79 AC_DEFINE_UNQUOTED(ARCHITECTURE,"$archset")
80
81 dnl Check the sizes etc. of the architecture
82 changequote(,)
83 if archline="`sed -ne 's/^'$archset':[ ]\+\(.*\)/\1/gp' $srcdir/buildlib/sizetable`"; then
84 changequote([,])
85 set $archline
86 if test "$1" = "little"; then
87 ac_cv_c_bigendian=no
88 else
89 ac_cv_c_bigendian=yes
90 fi
91 size_char=$2
92 size_int=$3
93 size_short=$4
94 size_long=$5
95 fi
96 if test "$cross_compiling" = "yes" -a "$archline" = ""; then
97 AC_MSG_ERROR(When cross compiling, architecture must be present in sizetable)
98 fi
99 AC_C_BIGENDIAN
100 AC_CHECK_SIZEOF(char,$size_char)
101 AC_CHECK_SIZEOF(int,$size_int)
102 AC_CHECK_SIZEOF(short,$size_short)
103 AC_CHECK_SIZEOF(long,$size_long)
104
105 dnl Check for debiandoc
106 AC_CHECK_PROG(DEBIANDOC_HTML,debiandoc2html,"yes","")
107 AC_CHECK_PROG(DEBIANDOC_TEXT,debiandoc2text,"yes","")
108
109 AC_OUTPUT(environment.mak:buildlib/environment.mak.in makefile:buildlib/makefile.in,make dirs)