1 2dnl Process this file with autoconf to produce a configure script. 3AC_INIT(ez-ipupdate.c) 4AM_CONFIG_HEADER(config.h) 5AM_INIT_AUTOMAKE(ez-ipupdate,3.0.11b7) 6 7 8dnl Checks for programs. 9 10AC_ARG_PROGRAM 11AC_PROG_CC 12AC_PROG_CPP 13AC_PROG_INSTALL 14 15AC_TYPE_SIGNAL 16 17dnl Checks for libraries. 18 19AC_CHECK_FUNC(gethostbyname) 20if test $ac_cv_func_gethostbyname = no; then 21 AC_CHECK_LIB(nsl, gethostbyname) 22fi 23AC_CHECK_FUNC(connect) 24if test $ac_cv_func_connect = no; then 25 AC_CHECK_LIB(socket, connect) 26fi 27 28AC_CHECK_FUNCS( socket \ 29 strdup \ 30 getopt_long \ 31 gethostbyaddr \ 32 getservbyname \ 33 inet_addr \ 34 inet_ntoa \ 35 snprintf \ 36 vfprintf \ 37 stat \ 38 vsprintf \ 39 vsnprintf \ 40 strerror \ 41 strftime \ 42 wait \ 43 waitpid \ 44 getpid \ 45 fork \ 46 vfork \ 47 getuid \ 48 geteuid \ 49 setuid \ 50 seteuid \ 51 getgid \ 52 getegid \ 53 setgid \ 54 setegid \ 55 inet_aton \ 56 herror ) 57 58dnl Checks for header files. 59AC_CHECK_HEADERS( arpa/inet.h \ 60 sys/types.h \ 61 sys/time.h \ 62 sys/stat.h \ 63 fcntl.h \ 64 signal.h \ 65 syslog.h \ 66 pwd.h \ 67 stdarg.h \ 68 grp.h \ 69 errno.h \ 70 sys/sockio.h \ 71 sys/wait.h \ 72 getopt.h ) 73AC_CHECK_HEADERS( unistd.h \ 74 netinet/in.h \ 75 netdb.h \ 76 sys/socket.h 77 ,, 78 AC_MSG_ERROR(could not locate neccessary system header files) ) 79 80AC_CHECK_LIB(c, sys_errlist, AC_DEFINE(HAVE_SYS_ERRLIST)) 81 82dnl you need at least to have getopt, but getopt_long will be used if it 83dnl is present 84AC_CHECK_FUNCS(getopt) 85if test "$ac_cv_func_getopt" != yes; then 86 AC_MSG_ERROR(getopt is needed for this program to work) 87fi 88 89AC_CHECK_FUNC(getpass, AC_DEFINE(HAVE_GETPASS), 90 [EXTRASRC="$EXTRASRC \$(srcdir)/getpass.c"] 91 [EXTRAOBJ="$EXTRAOBJ \$(srcdir)/getpass.o"] ) 92 93dnl Get system canonical name 94AC_CANONICAL_HOST 95AC_DEFINE_UNQUOTED(OS, "${host}") 96 97dnl allow selection of the default service 98dnl the default is to use ez-ip 99AC_MSG_CHECKING(for user supplied default service) 100AC_ARG_ENABLE(default-service, 101 [ --enable-default-service=SERVICE 102 the default service type to use 103 possibilities are: ezip, pgpow, justlinux, dhs, dnsomatic, 104 dyndns, dyndns-static, ods, tzo, gnudip, easydns, easydns-partner, dyns, hn, zoneedit, heipv6tb], 105 [ use_SERVICE=$enableval; 106 AC_MSG_RESULT(yes) ], 107 [ AC_MSG_RESULT(no) 108 use_SERVICE=null 109 AC_MSG_WARN(not setting default service) ] ) 110case "$use_SERVICE" in 111 ezip ) AC_DEFINE(DEF_SERVICE, "ezip");; 112 ez-ip ) AC_DEFINE(DEF_SERVICE, "ezip");; 113 pgpow ) AC_DEFINE(DEF_SERVICE, "pgpow");; 114 penguinpowered ) AC_DEFINE(DEF_SERVICE, "pgpow");; 115 justlinux ) AC_DEFINE(DEF_SERVICE, "justlinux");; 116 dhs ) AC_DEFINE(DEF_SERVICE, "dhs");; 117 dnsomatic ) AC_DEFINE(DEF_SERVICE, "dnsomatic");; 118 dyndns ) AC_DEFINE(DEF_SERVICE, "dyndns");; 119 dyndns-stat ) AC_DEFINE(DEF_SERVICE, "dyndns-stat");; 120 dyndns-static ) AC_DEFINE(DEF_SERVICE, "dyndns-static");; 121 ods ) AC_DEFINE(DEF_SERVICE, "ods");; 122 tzo ) AC_DEFINE(DEF_SERVICE, "tzo");; 123 gnudip ) AC_DEFINE(DEF_SERVICE, "gnudip");; 124 easydns ) AC_DEFINE(DEF_SERVICE, "easydns");; 125 easydns-partner ) AC_DEFINE(DEF_SERVICE, "easydns-partner");; 126 dyns ) AC_DEFINE(DEF_SERVICE, "dyns");; 127 hn ) AC_DEFINE(DEF_SERVICE, "hn");; 128 zoneedit ) AC_DEFINE(DEF_SERVICE, "zoneedit");; 129 heipv6tb ) AC_DEFINE(DEF_SERVICE, "heipv6tb");; 130 null ) AC_DEFINE(DEF_SERVICE, "NULL");; 131 "" ) ;; 132 * ) AC_MSG_ERROR(unknown default service type);; 133esac 134 135dnl check weather we want debugging support 136dnl the default is to NOT use debugging support 137AC_MSG_CHECKING(whether user wants debugging support) 138AC_ARG_ENABLE(debug, 139 [ --enable-debug include support for debugging], 140 [ AC_DEFINE(DEBUG) 141 AC_MSG_RESULT(yes) ], 142 [ AC_MSG_RESULT(no) ] ) 143 144dnl check weather we want to disable MD5 support 145AC_MSG_CHECKING(whether user wants to dissable MD5 support) 146AC_ARG_ENABLE(md5, 147 [ --disable-md5 disable MD5 support], 148 [ AC_MSG_RESULT(yes) ], 149 [ AC_DEFINE(USE_MD5) 150 AC_MSG_RESULT(no) ] ) 151 152AC_SUBST(EXTRASRC) 153AC_SUBST(EXTRAOBJ) 154 155AC_OUTPUT(Makefile) 156 157