1dnl Process this file with autoconf to produce a configure script.
2AC_INIT(vqadmin.c)
3AM_INIT_AUTOMAKE(vqadmin,2.3.6)
4AM_CONFIG_HEADER(config.h)
5AC_CANONICAL_HOST
6
7dnl Checks for programs.
8AC_PROG_CC
9AC_PROG_RANLIB
10
11AC_ISC_POSIX
12AC_AIX
13
14if test "$GCC" = yes ; then
15        CXXFLAGS="$CXXFLAGS -Wall"
16        CFLAGS="$CFLAGS -Wall"
17fi
18
19qmaildir=""
20for f in /var/qmail
21do
22    if test -d $f
23    then
24        qmaildir=$f
25    fi
26done
27
28AC_ARG_ENABLE(qmaildir, [  --enable-qmaildir=dir   directory where qmail is installed.],
29    qmaildir="$enableval",
30    [
31        if test "$qmaildir" = ""
32        then
33            AC_MSG_ERROR([Unable to find your qmaildir directory, specify --enable-qmaildir.])
34        fi
35    ] )
36AC_DEFINE_UNQUOTED(QMAILDIR,"$qmaildir")
37
38vpopuser="vpopmail"
39AC_ARG_ENABLE(vpopuser, [  --enable-vpopuser=vpopmail   user vchkpw was installed as.],
40    vpopuser="$enableval",
41    [
42        if test "$vpopuser" = ""
43        then
44            AC_MSG_ERROR([Unable to find your vpopuser user, specify --enable-vpopuser.])
45        fi
46    ] )
47AC_DEFINE_UNQUOTED(VPOPUSER,"$vpopuser")
48AC_SUBST(vpopuser)
49echo $vpopuser > vpopusername
50
51vpopgroup="vchkpw"
52AC_ARG_ENABLE(vpopgroup, [  --enable-vpopgroup=vchkpw   group vchkpw was installed as.],
53    vpopgroup="$enableval",
54    [
55        if test "$vpopgroup" = ""
56        then
57            AC_MSG_ERROR([Unable to find your vpopgroup group, specify --enable-vpopgroup.])
58        fi
59    ] )
60AC_DEFINE_UNQUOTED(VPOPGROUP,"$vpopgroup")
61AC_SUBST(vpopgroup)
62
63AC_TRY_RUN( [
64
65#include <stdio.h>
66#include <pwd.h>
67#include <stdlib.h>
68
69int main()
70{
71struct passwd *pw;
72char tmpbuf[100];
73FILE *f;
74
75        unlink("vpopmail.dir");
76        unlink("vpopmail.uid");
77        unlink("vpopmail.gid");
78
79        f=fopen("vpopusername","r+");
80        fgets(tmpbuf,100,f);
81        fclose(f);
82        tmpbuf[strlen(tmpbuf)-1] = 0;
83
84        if (( pw=getpwnam(tmpbuf)) != 0 ) {
85                f=fopen("vpopmail.dir","a+");
86                fprintf(f,"%s\n", pw->pw_dir);
87                fclose(f);
88
89                f=fopen("vpopmail.uid", "a+");
90                fprintf(f,"%d\n", pw->pw_uid);
91                fclose(f);
92
93                f=fopen("vpopmail.gid", "a+");
94                fprintf(f,"%d\n", pw->pw_gid);
95                fclose(f);
96        }
97        return(0);
98}
99],
100    AC_MSG_RESULT(yes),
101    AC_MSG_RESULT(no)
102    AC_MSG_ERROR(Could not compile and run even a trivial ANSI C program - check CC.),
103    AC_MSG_ERROR(Could not compile and run even a trivial ANSI C program - check CC.))
104
105if test ! -f vpopmail.uid
106then
107        AC_MSG_ERROR(No vpopmail user.)
108fi
109
110if test ! -f vpopmail.gid
111then
112        AC_MSG_ERROR(No vpopmail group.)
113fi
114
115if test ! -f vpopmail.dir
116then
117        AC_MSG_ERROR(No vpopmail home directory user.)
118fi
119
120vpopmaildir=`cat vpopmail.dir`
121AC_SUBST(vpopmaildir)
122rm -f vpopmail.dir
123
124vpopmailuid=`cat vpopmail.uid`
125AC_SUBST(vpopmailuid)
126rm -f vpopmail.uid
127
128vpopmailgid=`cat vpopmail.gid`
129AC_SUBST(vpopmailgid)
130rm -f vpopmail.gid
131rm -f vpopusername
132
133if test ! -f $vpopmaildir/etc/lib_deps
134then
135        AC_MSG_ERROR(No vpopmail etc/lib_deps file. Upgrade to vpopmail-4.9.8 or above)
136fi
137lib_deps=`cat $vpopmaildir/etc/lib_deps`
138AC_SUBST(lib_deps)
139
140if test ! -f $vpopmaildir/etc/inc_deps
141then
142        AC_MSG_ERROR(No vpopmail etc/inc_deps file. Upgrade to vpopmail-4.9.8 or above)
143fi
144inc_deps=`cat $vpopmaildir/etc/inc_deps`
145AC_SUBST(inc_deps)
146
147cgibindir=""
148wwwroot=""
149
150for f in /home/httpd /usr/local/apache /usr/local/www /var/lib/httpd /var/www /usr/local/www /var/www
151do
152    if test -d $f/html
153    then
154        wwwroot=$f/html
155    fi
156
157    if test -d $f/cgi-bin
158    then
159        cgibindir=$f/cgi-bin
160    fi
161done
162
163AC_SUBST(wwwroot)
164
165AC_ARG_ENABLE(cgibindir, [  --enable-cgibindir={dir}   HTTP server's cgi-bin directory.],
166    cgibindir="$enableval",
167    [
168        if test "$cgibindir" = ""
169        then
170            AC_MSG_ERROR([Unable to find your cgi-bin directory, specify --enable-cgibindir.])
171        fi
172    ] )
173AC_SUBST(cgibindir)
174
175AC_ARG_ENABLE(mysql,
176        [  --enable-mysql=y|n   Turn on mysql features (y) or off (n default).],
177        ENABLE_MYSQL=$enableval,
178                [
179                        ENABLE_MYSQL=n
180                ])
181
182case $ENABLE_MYSQL in
1831*|y*|Y*)
184      ENABLE_MYSQL=1
185      AC_DEFINE_UNQUOTED(ENABLE_MYSQL,$ENABLE_MYSQL)
186inc_deps="`cat $vpopmaildir/etc/inc_deps` -I/usr/include/mysql"
187AC_SUBST(inc_deps)
188lib_deps="`cat $vpopmaildir/etc/lib_deps` -L/usr/lib/mysql -lmysqlclient -lz -lcrypt -lnsl -lm"
189AC_SUBST(lib_deps)
190      ;;
191*)
192      ;;
193esac
194
195dnl Checks for header files.
196AC_HEADER_DIRENT
197AC_HEADER_STDC
198AC_CHECK_HEADERS(unistd.h)
199
200dnl Checks for typedefs, structures, and compiler characteristics.
201AC_C_CONST
202AC_TYPE_SIZE_T
203AC_STRUCT_TM
204
205dnl Checks for library functions.
206AC_CHECK_LIB(crypt,crypt)
207AC_CHECK_LIB(m,floor)
208AC_CHECK_LIB(z,compress)
209
210AC_OUTPUT(Makefile)
211
212echo ""
213echo "            Current settings"
214echo "---------------------------------------"
215echo "vpopmail directory = "$vpopmaildir""
216echo "               uid = "$vpopmailuid""
217echo "               gid = "$vpopmailgid""
218echo "       cgi-bin dir = $cgibindir"
219echo "       vqadmin dir = $cgibindir/vqadmin"
220case $ENABLE_MYSQL in
2211*|y*|Y*)
222echo "    mysql features = enabled"
223      ;;
224*)
225echo "    mysql features = disabled"
226	  ;;
227esac
228