1AC_INIT(../include/ptlib.h) 2 3AC_PREREQ([2.63]) # sometimes this file gets processed by old autoconf 4AC_PROG_CXX 5AC_PROG_CPP 6 7AC_CANONICAL_TARGET() 8 9dnl ######################################################################## 10dnl set the PREFIX accordingly 11if test "x$prefix" = "xNONE"; then 12 INSTALLPREFIX="/usr/local" 13else 14 INSTALLPREFIX="${prefix}" 15fi 16 17AC_SUBST(INSTALLPREFIX) 18 19dnl ######################################################################## 20dnl set LIBDIR accordingly 21LIBDIR="${libdir}" 22AC_SUBST(LIBDIR) 23 24AC_ARG_ENABLE(plugins, disable plugin support]) 25if test "${enable_plugins}z" = "z" ; then 26 enable_plugins=yes 27fi 28if test "$enable_plugins" = "no" ; then 29 AC_MSG_NOTICE(Plugins disabled) 30else 31 32 33AC_ARG_ENABLE(audio, 34 [ --disable-audio disable audio support]) 35if test "${enable_audio}z" = "z" ; then 36 enable_audio=yes 37fi 38 39if test "${enable_audio}" = "yes" ; then 40 41dnl ######################################################################### 42dnl check for Alsa sound support 43dnl ######################################################################## 44 45AC_ARG_ENABLE(alsa, [ --enable-alsa enable ALSA audio support],,enable_alsa=yes) 46 47if test "${enable_alsa}z" = "yesz" ; then 48 AC_CHECK_HEADER(alsa/asoundlib.h, ALSAHDR=1) 49 AC_MSG_CHECKING(for ALSA sound support) 50 if test "${ALSAHDR}z" != "z"; then 51 AC_SUBST(HAS_ALSA, 1) 52 AC_MSG_RESULT(yes) 53 else 54 AC_MSG_RESULT(no) 55 fi 56fi 57 58dnl ######################################################################### 59dnl check for ESD sound support 60dnl ######################################################################## 61 62AC_ARG_ENABLE(esd, [ --enable-esd enable ESD audio support],,enable_esd=no) 63 64if test "${enable_esd}z" = "yesz" ; then 65 AC_CHECK_HEADER(esd.h, ESDHDR=1) 66 AC_MSG_CHECKING(for ESD sound support) 67 if test "${ESDHDR}z" != "z"; then 68 AC_SUBST(HAS_ESD, 1) 69 AC_MSG_RESULT(yes) 70 else 71 AC_MSG_RESULT(no) 72 fi 73fi 74 75dnl ######################################################################### 76dnl check for OSS sound support 77dnl ######################################################################## 78 79AC_ARG_ENABLE(oss, [ --enable-oss enable OSS audio support],,enable_oss=no) 80 81if test "${enable_oss}z" = "yesz" ; then 82 AC_CHECK_HEADER(sys/soundcard.h, OSSSNDCARDHDR=1) 83 AC_MSG_CHECKING(for OSS sound support) 84 if test "${OSSSNDCARDHDR}z" != "z"; then 85 AC_SUBST(HAS_OSS, 1) 86 AC_MSG_RESULT(yes) 87 else 88 AC_MSG_RESULT(no) 89 fi 90fi 91dnl ######################################################################### 92 93dnl check for Pulse sound support 94dnl ######################################################################## 95 96AC_ARG_ENABLE(pulse, [ --enable-pulse enable Pulse audio support],,enable_pulse=yes) 97 98if test "${enable_pulse}z" = "yesz" ; then 99 AC_CHECK_HEADER(pulse/simple.h, PULSESNDCARDHDR=1) 100 AC_MSG_CHECKING(for Pulse sound support) 101 if test "${PULSESNDCARDHDR}z" != "z"; then 102 AC_SUBST(HAS_PULSE, 1) 103 AC_MSG_RESULT(yes) 104 else 105 AC_MSG_RESULT(no) 106 fi 107fi 108 109dnl ######################################################################### 110dnl check for sunaudio sound support 111dnl ######################################################################## 112 113AC_ARG_ENABLE(sunaudio, [ --enable-sunaudio enable Sun audio support],,enable_sunaudio=no) 114 115if test "${enable_sunaudio}z" = "yesz" ; then 116 AC_CHECK_HEADER(sys/conf.h, SUNSNDCARDHDR=1) 117 AC_MSG_CHECKING(for Sun audio sound support) 118 if test "${SUNSNDCARDHDR}z" != "z"; then 119 AC_SUBST(HAS_SUNAUDIO, 1) 120 AC_MSG_RESULT(yes) 121 else 122 AC_MSG_RESULT(no) 123 fi 124fi 125 126dnl ######################################################################### 127dnl check for shm sound support 128dnl ######################################################################## 129 130AC_ARG_ENABLE(shmaudio, [ --enable-shmaudio enable shm audio support],,enable_shmaudio=no) 131 132if test "${enable_shmaudio}z" = "yesz" ; then 133 AC_CHECK_FUNC(sem_timedwait, SNDSHMHDR=1) 134 AC_MSG_CHECKING(for shm audio sound support) 135 if test "${SNDSHMHDR}z" != "z"; then 136 AC_SUBST(HAS_AUDIOSHM, 1) 137 AC_MSG_RESULT(yes) 138 else 139 AC_MSG_RESULT(no) 140 fi 141fi 142 143fi # enable_audio 144 145AC_ARG_ENABLE(video, 146 [ --disable-video disable video device support]) 147 148if test "${enable_video}z" = "z" ; then 149 enable_video=yes 150fi 151 152if test "$enable_video" = "yes" ; then 153 154dnl ######################################################################### 155dnl check for V4L video support 156dnl ######################################################################## 157 158AC_ARG_ENABLE(v4l, [ --enable-v4l enable V4L video support],,enable_v4l=no) 159if test "${enable_v4l}z" = "yesz" ; then 160 AC_CHECK_HEADER(linux/videodev.h, V4LHDR=1) 161 AC_MSG_CHECKING(for V4L video support) 162 if test "${V4LHDR}z" != "z"; then 163 AC_SUBST(HAS_V4L, 1) 164 AC_MSG_RESULT(yes) 165 else 166 AC_MSG_RESULT(no) 167 fi 168fi 169 170dnl ######################################################################### 171dnl check for V4L2 video support 172dnl ######################################################################## 173 174AC_ARG_ENABLE(v4l2, [ --enable-v4l2 enable V4L2 video support],,enable_v4l2=yes) 175 176if test "${enable_v4l2}z" = "yesz" ; then 177 case "$target_os" in 178 solaris* | sunos* ) V4L2_HEADER="sys/videodev2.h" ; ;; 179 netbsd* ) V4L2_HEADER="sys/videoio.h" ; ;; 180 * ) V4L2_HEADER="linux/videodev2.h" ; ;; 181 esac 182 183 AC_CHECK_HEADER([$V4L2_HEADER], 184 [HAS_V4L2=1], 185 [ 186 # We can't use AC_CHECK_HEADER again because 187 # the value is cached, perhaps we have another 188 # method to do this more cleanly ? 189 AC_MSG_CHECKING([for $V4L2_HEADER with sys/types.h]) 190 AC_TRY_COMPILE([ 191 #ifdef __linux__ 192 #include <sys/types.h> 193 #include <linux/types.h> 194 #else 195 #ifdef __sun 196 #include <sys/types.h> 197 #include <sys/time.h> 198 #else 199 #error "not supported" 200 #endif 201 #endif 202 #include "$V4L2_HEADER" 203 ], 204 [ 205 return 0; 206 ], 207 [ 208 HAS_V4L2=1 209 AC_MSG_RESULT(yes) 210 ], 211 [ 212 HAS_V4L2= 213 AC_MSG_RESULT(no) 214 ]) 215 ], 216 [ 217 #ifdef __linux__ 218 #include <linux/types.h> 219 #endif 220 ]) 221 AC_MSG_CHECKING(for V4L2 video support) 222 if test "x${HAS_V4L2}" = "x1"; then 223 AC_MSG_RESULT(yes) 224 AC_SUBST([V4L2_CXXFLAGS],[-DV4L2_HEADER=\'\"$V4L2_HEADER\"\']) 225 else 226 HAS_V4L2= 227 AC_MSG_RESULT(no) 228 fi 229 AC_SUBST(HAS_V4L2) 230 231 if test "x${HAS_V4L2}" = "x1"; then 232 AC_CHECK_HEADER([libv4l2.h], 233 [AC_CHECK_LIB([v4l2], [v4l2_fd_open], [HAS_LIBV4L=1])] 234 ) 235 236 AC_MSG_CHECKING([for libv4l2 support]) 237 if test "x${HAS_LIBV4L}" = "x1"; then 238 AC_MSG_RESULT(yes) 239 else 240 AC_MSG_RESULT(no) 241 fi 242 AC_SUBST(HAS_LIBV4L) 243 fi 244fi 245 246dnl ######################################################################### 247dnl check for BSD video capture support 248dnl ######################################################################## 249 250AC_ARG_ENABLE(bsdvideo, [ --enable-bsdvideo enable BSD video support],,enable_bsdvideo=yes) 251 252if test "${enable_bsdvideo}z" = "yesz" ; then 253 AC_CHECK_HEADER(dev/bktr/ioctl_meteor.h, BSDVIDEOHDR=1) 254 AC_CHECK_HEADER(machine/ioctl_meteor.h, BSDVIDEOHDR=1) 255 AC_CHECK_HEADER(i386/ioctl_meteor.h, BSDVIDEOHDR=1) 256 AC_CHECK_HEADER(dev/ic/bt8xx.h, BSDVIDEOHDR=1) 257 AC_MSG_CHECKING(for BSD video support) 258 if test "${BSDVIDEOHDR}z" != "z"; then 259 AC_SUBST(HAS_BSDVIDEOCAP, 1) 260 AC_MSG_RESULT(yes) 261 else 262 AC_MSG_RESULT(no) 263 fi 264fi 265 266dnl ######################################################################### 267dnl check for AVC video support 268dnl ######################################################################## 269 270AC_ARG_ENABLE(avc, [ --enable-avc enable IEEE1394/AVC video support],,enable_avc=no) 271 272if test "${enable_avc}z" = "yesz" ; then 273 AC_CHECK_HEADER(libavc1394/avc1394.h, AVC1394HDR=1) 274 AC_CHECK_HEADER(libdv/dv.h, DVHDR=1) 275 AC_CHECK_HEADER(libraw1394/raw1394.h, RAW1394HDR=1) 276 AC_MSG_CHECKING(for IEEE1394/AVC video support) 277 if test "${AVC1394HDR}z" != "z" -a "${DVHDR}z" != "z" -a "${RAW1394HDR}z" != "z"; then 278 AC_SUBST(HAS_AVC1394, 1) 279 AC_MSG_RESULT(yes) 280 else 281 AC_MSG_RESULT(no) 282 fi 283fi 284 285dnl ######################################################################### 286dnl check for DC video support 287dnl ######################################################################## 288 289AC_ARG_ENABLE(dc, [ --enable-dc enable IEEE1394/DC video support],,enable_dc=yes) 290 291if test "${enable_dc}z" = "yesz" ; then 292 AC_CHECK_HEADER(libdc1394/dc1394_control.h, DC1394HDR=1) 293 AC_CHECK_HEADER(libraw1394/raw1394.h, RAW1394HDR=1) 294 AC_MSG_CHECKING(for IEEE1394/DC video support) 295 if test "${DC1394HDR}z" != "z" -a "${RAW1394HDR}z" != "z"; then 296 AC_SUBST(HAS_DC1394, 1) 297 AC_MSG_RESULT(yes) 298 AC_MSG_CHECKING(if dc1394_dma_setup_capture has 12 parms) 299 AC_COMPILE_IFELSE([AC_LANG_SOURCE([ 300#include "libdc1394/dc1394_control.h" 301int main(int ac,char **av) 302{ 303 raw1394handle_t handle; 304 nodeid_t node; 305 int channel; 306 int format; 307 int mode; 308 int speed; 309 int frame_rate; 310 int num_dma_buffers; 311 int do_extra_buffering; 312 int drop_frames; 313 const char *dma_device_file; 314 dc1394_cameracapture *camera; 315 dc1394_dma_setup_capture(handle, node, channel, format, mode, speed, frame_rate, num_dma_buffers, 316 do_extra_buffering, drop_frames, dma_device_file, camera); 317 return 0; 318} 319])],NEW_DC_API=1, NEW_DC_API=0) 320 if test "$NEW_DC_API" = "1" ; then 321 AC_SUBST(DC_CFLAGS, -DNEW_DC_API) 322 AC_MSG_RESULT(yes) 323 else 324 AC_SUBST(DC_CFLAGS) 325 AC_MSG_RESULT(no) 326 fi 327 else 328 AC_MSG_RESULT(no) 329 fi 330fi 331 332fi 333dnl end of test for video 334 335fi # enable_plugins 336 337dnl ######################################################################## 338dnl output header file 339 340AC_CONFIG_FILES(Makefile) 341AC_CONFIG_FILES(vidinput_v4l2/Makefile) 342AC_CONFIG_FILES(vidinput_dc/Makefile) 343 344AC_OUTPUT() 345