source: trunk/essentials/app-arch/tar/m4/rmt.m4

Last change on this file was 3342, checked in by bird, 18 years ago

tar 1.16.1

File size: 2.4 KB
Line 
1
2AC_DEFUN([PU_RMT],[
3 # Set LIB_SETSOCKOPT to -lnsl -lsocket if necessary.
4 pu_save_LIBS=$LIBS
5 LIB_SETSOCKOPT=
6 AC_SEARCH_LIBS(setsockopt, [socket], ,
7 [AC_SEARCH_LIBS(setsockopt, [socket], , , [-lnsl])])
8 AC_SEARCH_LIBS(setsockopt, [nsl])
9
10 case "$ac_cv_search_setsockopt" in
11 -l*) LIB_SETSOCKOPT=$ac_cv_search_setsockopt
12 esac
13 AC_SUBST(LIB_SETSOCKOPT)
14 LIBS=$pu_save_LIBS
15
16 AC_CHECK_FUNCS_ONCE([strerror])
17 enable_rmt() {
18 if test $ac_cv_header_sys_mtio_h = yes; then
19 AC_CACHE_CHECK(for remote tape header files, pu_cv_header_rmt,
20 [AC_TRY_CPP([
21#if HAVE_SGTTY_H
22# include <sgtty.h>
23#endif
24#include <sys/socket.h>],
25 pu_cv_header_rmt=yes,
26 pu_cv_header_rmt=no)])
27 test $pu_cv_header_rmt = yes && PU_RMT_PROG='rmt$(EXEEXT)'
28 AC_SUBST(PU_RMT_PROG)
29 fi
30 }
31
32 AC_CHECK_HEADERS([sys/mtio.h])
33 AC_CACHE_CHECK(which ioctl field to test for reversed bytes,
34 pu_cv_header_mtio_check_field,
35 [AC_EGREP_HEADER(mt_model, sys/mtio.h,
36 pu_cv_header_mtio_check_field=mt_model,
37 pu_cv_header_mtio_check_field=mt_type)])
38 AC_DEFINE_UNQUOTED(MTIO_CHECK_FIELD,
39 $pu_cv_header_mtio_check_field,
40 [Define to mt_model (v.g., for DG/UX), else to mt_type.])
41
42
43 AC_ARG_VAR([DEFAULT_RMT_DIR],
44 [Define full file name of the directory where to install `rmt'. (default: $(libexecdir))])
45 if test "x$DEFAULT_RMT_DIR" != x; then
46 DEFAULT_RMT_COMMAND=$DEFAULT_RMT_DIR/rmt
47 else
48 DEFAULT_RMT_DIR='$(libexecdir)'
49 fi
50
51 AC_MSG_CHECKING([whether to build rmt])
52 AC_ARG_WITH([rmt],
53 AC_HELP_STRING([--with-rmt=FILE],
54 [Use FILE as the default `rmt' program. Do not build included copy of `rmt'.]),
55 [case $withval in
56 yes|no) AC_MSG_ERROR([Invalid argument to --with-rmt]);;
57 /*) DEFAULT_RMT_COMMAND=$withval
58 AC_MSG_RESULT([no, use $withval instead]);;
59 *) AC_MSG_ERROR([Argument to --with-rmt must be an absolute file name]);;
60 esac],
61 [AC_MSG_RESULT([yes])
62 enable_rmt
63 if test "$PU_RMT_PROG" = ""; then
64 AC_MSG_WARN([not building rmt, required header files are missing])
65 fi])
66
67 AC_SUBST(DEFAULT_RMT_COMMAND)
68 if test "x$DEFAULT_RMT_COMMAND" != x; then
69 AC_DEFINE_UNQUOTED(DEFAULT_RMT_COMMAND, "$DEFAULT_RMT_COMMAND",
70 [Define full file name of rmt program.])
71 fi
72])
73
74
Note: See TracBrowser for help on using the repository browser.