1
|
1 dnl Process this file with autoconf to produce a configure script.
|
|
2
|
|
3 AC_INIT(lib/gftp.h)
|
|
4
|
|
5 AM_CONFIG_HEADER(config.h)
|
73
|
6 AM_INIT_AUTOMAKE(gftp,2.0.14)
|
1
|
7
|
57
|
8 AC_ARG_ENABLE(gtk20, [ --disable-gtk20 Don't look for GTK+ 2.0 libraries], enable_gtk20=0, enable_gtk20=1)
|
1
|
9 AC_ARG_ENABLE(gtkport, [ --disable-gtkport Disable compiling the GTK+ port], enable_gtkport=0, enable_gtkport=1)
|
|
10 AC_ARG_ENABLE(textport, [ --disable-textport Disable compiling the text port], enable_textport=0, enable_textport=1)
|
|
11 AC_ARG_ENABLE(dmalloc, [ --enable-dmalloc Enable the dmalloc library], enable_dmalloc=1, enable_dmalloc=0)
|
|
12
|
|
13 AC_SUBST(PACKAGE)
|
|
14 AC_SUBST(VERSION)
|
|
15 AC_SUBST(PREFIX)
|
|
16
|
54
|
17 ALL_LINGUAS="bg cs da de es fi fr hu it ja ko nl no pl pt_BR ro ru sv tr zh_CN zh_TW"
|
1
|
18
|
16
|
19 AC_DEFINE(_GNU_SOURCE, 1, [Define for setting a GNU environment])
|
|
20
|
1
|
21 AC_CANONICAL_HOST
|
16
|
22 AC_PROG_CC
|
|
23 AC_AIX
|
|
24 AC_MINIX
|
|
25 AC_EXEEXT
|
|
26 AC_PROG_RANLIB
|
|
27 AC_SYS_LARGEFILE
|
|
28 dnl AC_ISC_POSIX
|
|
29 AM_C_PROTOTYPES
|
|
30 AC_C_CONST
|
|
31 AC_C_INLINE
|
1
|
32
|
26
|
33 AM_MAINTAINER_MODE
|
|
34
|
1
|
35 AC_PROG_AWK
|
|
36 AC_PROG_INSTALL
|
|
37 AC_PROG_LN_S
|
|
38 AC_PROG_MAKE_SET
|
|
39
|
|
40 AC_HEADER_DIRENT
|
|
41 AC_HEADER_STDC
|
|
42 AC_HEADER_SYS_WAIT
|
|
43 AC_CHECK_HEADERS(fcntl.h limits.h malloc.h strings.h sys/ioctl.h sys/time.h unistd.h)
|
|
44
|
|
45 AC_TYPE_MODE_T
|
|
46 AC_TYPE_PID_T
|
|
47 AC_TYPE_SIZE_T
|
|
48 AC_HEADER_TIME
|
|
49 AC_STRUCT_TM
|
|
50
|
|
51 AC_FUNC_ALLOCA
|
|
52 AC_PROG_GCC_TRADITIONAL
|
|
53 AC_FUNC_MMAP
|
|
54 AC_TYPE_SIGNAL
|
|
55 AC_FUNC_STRFTIME
|
|
56 AC_FUNC_UTIME_NULL
|
|
57 AC_CHECK_FUNCS(gai_strerror getaddrinfo getcwd gettimeofday getwd mkdir mktime putenv rmdir select socket strdup strstr strtod strtol uname)
|
|
58
|
57
|
59 if test $enable_gtk20 = 1 ; then
|
|
60 PKG_CHECK_MODULES(GLIB, glib-2.0 >= 2.0.0, found_glib20=1, found_glib20=0)
|
|
61 else
|
|
62 found_glib20=0;
|
|
63 fi
|
|
64
|
|
65 if test "x$GFTP_TEXT" = "x" -a $found_glib20 = 0 ; then
|
26
|
66 AM_PATH_GLIB(1.2.3, , AC_MSG_ERROR(gFTP needs GLIB 1.2.3 or higher))
|
1
|
67 fi
|
|
68
|
57
|
69 AC_CHECK_LIB(socket, socket, EXTRA_LIBS="-lsocket")
|
|
70
|
|
71 AC_CHECK_LIB(nsl, gethostbyname, EXTRA_LIBS="$EXTRA_LIBS -lnsl")
|
1
|
72
|
|
73 GFTP_TEXT=""
|
|
74 EXTRA_LIBS=""
|
|
75 USE_READLINE="yes"
|
|
76 READLINE_LIBS=""
|
|
77 if test "x$enable_textport" = "x1" ; then
|
|
78 AC_MSG_CHECKING([whether to use readline])
|
|
79 AC_ARG_WITH(readline,
|
|
80 [ --with-readline turn on readline [default=yes, default tries -lncurses, -lcurses, -ltermcap]],
|
|
81 [case "${withval}" in
|
|
82 yes) USE_READLINE="yes" ; AC_MSG_RESULT([yes]) ;;
|
|
83 no) USE_READLINE="no" ; AC_MSG_RESULT([no]) ;;
|
|
84 only) USE_READLINE="yes"
|
|
85 EXTRA_LIBREADLINE_DEPS=" "
|
|
86 AC_MSG_RESULT([yes (using only readline)]) ;;
|
|
87 *) USE_READLINE="yes"
|
|
88 EXTRA_LIBREADLINE_DEPS="${withval}"
|
|
89 AC_MSG_RESULT([yes (using extra libraries ${withval})]) ;;
|
|
90 esac],[AC_MSG_RESULT([${USE_READLINE}])])
|
|
91
|
|
92 dnl Checks for libraries.
|
|
93 dnl When checking readline, check using extra libraries first.
|
|
94 dnl We want to protect against the link somehow succeeding, but only
|
|
95 dnl failing at runtime, as seems to happen on some BSD systems.
|
|
96 if test "$USE_READLINE" = yes ; then
|
|
97 if test "$EXTRA_LIBREADLINE_DEPS" = "" ; then
|
|
98 unset ac_cv_lib_readline_readline
|
|
99 AC_CHECK_LIB(readline, readline, HAVE_LIBREADLINE=true,
|
|
100 HAVE_LIBREADLINE=false, -lncurses)
|
|
101 if test x${HAVE_LIBREADLINE} = xtrue ; then
|
|
102 echo " Using -lreadline -lncurses"
|
|
103 EXTRA_LIBREADLINE_DEPS=-lncurses
|
26
|
104 AC_DEFINE(HAVE_LIBREADLINE, [1], [Define if the text port uses readline])
|
1
|
105 else
|
|
106 unset ac_cv_lib_readline_readline
|
|
107 AC_CHECK_LIB(readline, readline, HAVE_LIBREADLINE=true,
|
|
108 HAVE_LIBREADLINE=false, -lcurses)
|
|
109 if test x${HAVE_LIBREADLINE} = xtrue ; then
|
|
110 echo " Using -lreadline -lcurses"
|
|
111 EXTRA_LIBREADLINE_DEPS=-lcurses
|
26
|
112 AC_DEFINE(HAVE_LIBREADLINE, [1], [Define if the text port uses readline])
|
1
|
113 else
|
|
114 unset ac_cv_lib_readline_readline
|
|
115 AC_CHECK_LIB(readline, readline, HAVE_LIBREADLINE=true,
|
|
116 HAVE_LIBREADLINE=false, -ltermcap)
|
|
117 if test x${HAVE_LIBREADLINE} = xtrue ; then
|
|
118 echo " Using -lreadline -ltermcap"
|
|
119 EXTRA_LIBREADLINE_DEPS=-ltermcap
|
26
|
120 AC_DEFINE(HAVE_LIBREADLINE, [1], [Define if the text port uses readline])
|
1
|
121 else
|
|
122 unset ac_cv_lib_readline_readline
|
|
123 AC_CHECK_LIB(readline, readline, HAVE_LIBREADLINE=true,
|
|
124 HAVE_LIBREADLINE=false)
|
|
125 if test x${HAVE_LIBREADLINE} = xtrue ; then
|
26
|
126 AC_DEFINE(HAVE_LIBREADLINE, [1], [Define if the text port uses readline])
|
1
|
127 else
|
26
|
128 AC_DEFINE(HAVE_LIBREADLINE, [0], [Define if the text port uses readline])
|
1
|
129 fi
|
|
130 fi
|
|
131 fi
|
|
132 fi
|
|
133 else
|
|
134 unset ac_cv_lib_readline_readline
|
|
135 AC_CHECK_LIB(readline, readline, HAVE_LIBREADLINE=true,
|
|
136 HAVE_LIBREADLINE=false, ${EXTRA_LIBREADLINE_DEPS})
|
|
137 if test x${HAVE_LIBREADLINE} = xtrue ; then
|
|
138 echo " Using -lreadline ${EXTRA_LIBREADLINE_DEPS}"
|
26
|
139 AC_DEFINE(HAVE_LIBREADLINE, [1], [Define if the text port uses readline])
|
1
|
140 else
|
26
|
141 AC_DEFINE(HAVE_LIBREADLINE, [0], [Define if the text port uses readline])
|
1
|
142 fi
|
|
143 fi
|
|
144 else
|
|
145 HAVE_LIBREADLINE=false
|
26
|
146 AC_DEFINE(HAVE_LIBREADLINE, [0], [Define if the text port uses readline])
|
1
|
147 fi
|
|
148 if test x${HAVE_LIBREADLINE} = xtrue; then
|
|
149 READLINE_LIBS="-lreadline ${EXTRA_LIBREADLINE_DEPS}"
|
|
150 GFTP_TEXT="gftp-text"
|
|
151 fi
|
|
152 fi
|
|
153
|
|
154 AC_CHECK_LIB(m, log10, EXTRA_LIBS="$EXTRA_LIBS -lm")
|
|
155
|
26
|
156 AM_WITH_DMALLOC
|
1
|
157
|
|
158 AC_SUBST(EXTRA_LIBS)
|
|
159 AC_SUBST(READLINE_LIBS)
|
|
160 AC_SUBST(GFTP_TEXT)
|
|
161
|
|
162 GFTP_GTK=""
|
|
163 PTHREAD_CFLAGS=""
|
|
164 PTHREAD_LIBS=""
|
33
|
165
|
|
166 # I don't have PKG_CHECK_MODULES or AM_PATH_GLIB check for gthread because
|
|
167 # the text port doesn't need to be compiled against the thread libraries
|
|
168 GTHREAD_LIBS=""
|
|
169
|
1
|
170 if test "x$enable_gtkport" = "x1" ; then
|
57
|
171 if test $found_glib20 = 1 -a $enable_gtk20 = 1 ; then
|
|
172 PKG_CHECK_MODULES(GTK, gtk+-2.0 >= 2.0.0, GFTP_GTK=gftp-gtk, AC_MSG_ERROR(You have GLIB 2.0 installed but I cannot find GTK+ 2.0. Run configure with --disable-gtk20 or install GTK+ 2.0))
|
1
|
173 fi
|
|
174
|
|
175 if test "x$GFTP_GTK" = "x" ; then
|
|
176 AM_PATH_GTK(1.2.3, GFTP_GTK=gftp-gtk, AC_MSG_WARN(gFTP needs GTK+ 1.2.3 or higher for the graphical version. Only building the text version))
|
33
|
177 GTHREAD_LIBS="-lgthread"
|
|
178 else
|
|
179 GTHREAD_LIBS="-lgthread-2.0"
|
1
|
180 fi
|
|
181
|
|
182 if test "x$GFTP_GTK" = xgftp-gtk; then
|
|
183 AC_CHECK_LIB(pthread, pthread_create, PTHREAD_LIBS="-lpthread")
|
|
184
|
|
185 if test "x$PTHREAD_LIBS" = x ; then
|
|
186 AC_CHECK_LIB(pthreads, pthread_create, PTHREAD_LIBS="-lpthreads")
|
|
187 fi
|
|
188
|
|
189 if test "x$PTHREAD_LIBS" = x ; then
|
|
190 AC_CHECK_LIB(c_r, pthread_create, PTHREAD_LIBS="-lc_r")
|
|
191 fi
|
|
192
|
|
193 if test "x$PTHREAD_LIBS" = x ; then
|
|
194 echo ;
|
|
195 echo "Error: Cannot find the pthread libraries. If you don't have them installed," ;
|
|
196 echo "your X libraries probably aren't thread safe either. You can download the" ;
|
|
197 echo "pthread library and the thread safe X libraries from my webpage at" ;
|
|
198 echo "http://www.gftp.org/. Note the pthread library and the thread safe" ;
|
|
199 echo "X libraries on my webpage are for Linux libc5 machines ONLY" ;
|
|
200 echo ;
|
|
201 exit
|
|
202 fi
|
|
203
|
|
204 PTHREAD_CFLAGS="-D_REENTRANT"
|
|
205
|
|
206 # I took some of these from the glib 1.3.3 configure.in
|
|
207 case $host in
|
|
208 *-hpux*)
|
|
209 # From H.Merijn Brand <h.m.brand@hccnet.nl>
|
|
210 echo '#define pthread_attr_init(x) __pthread_attr_init_system(x)'
|
|
211 +>>confdefs.h
|
|
212 ;;
|
|
213 *-aix*)
|
|
214 PTHREAD_CFLAGS="$PTHREAD_CFLAGS -D_THREAD_SAFE"
|
|
215 if test x"$GCC" = xyes; then
|
|
216 PTHREAD_CFLAGS="$PTHREAD_CFLAGS -mthreads"
|
|
217 fi
|
|
218 ;;
|
|
219 *-freebsd*)
|
|
220 PTHREAD_CFLAGS="$PTHREAD_CFLAGS -D_THREAD_SAFE"
|
|
221
|
|
222 # FreeBSD 2.2.x shiped with gcc 2.7.2.x, which doesn't support
|
|
223 # -mthreads flag.
|
|
224 ;;
|
|
225 *-openbsd*)
|
|
226 PTHREAD_CFLAGS="$PTHREAD_CFLAGS -D_THREAD_SAFE"
|
|
227 if test "x$PTHREAD_LIBS" = "x-lc_r"; then
|
|
228 PTHREAD_LIBS="-pthread"
|
|
229 fi
|
|
230 ;;
|
|
231 *-sysv5uw7*) # UnixWare 7
|
|
232 if test "$GCC" != "yes"; then
|
|
233 PTHREAD_CFLAGS="$PTHREAD_CFLAGS -Kthread"
|
|
234 else
|
|
235 PTHREAD_CFLAGS="$PTHREAD_CFLAGS -pthread"
|
|
236 fi
|
|
237 ;;
|
|
238 *-dg-dgux*) # DG/UX
|
|
239 PTHREAD_CFLAGS="$PTHREAD_CFLAGS -D_POSIX4A_DRAFT10_SOURCE"
|
|
240 esac
|
|
241 fi
|
|
242 fi
|
|
243 AC_SUBST(PTHREAD_CFLAGS)
|
|
244 AC_SUBST(PTHREAD_LIBS)
|
33
|
245 AC_SUBST(GTHREAD_LIBS)
|
1
|
246 AC_SUBST(GFTP_GTK)
|
|
247
|
28
|
248 AM_GNU_GETTEXT
|
1
|
249
|
66
|
250 AC_OUTPUT(Makefile docs/Makefile docs/sample.gftp/Makefile src/gftp src/Makefile src/gtk/Makefile src/text/Makefile lib/Makefile gftp.spec intl/Makefile po/Makefile.in )
|