X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=configure.ac;h=1190821cbdd1fb6697c09b13bc1c328838d4b2a9;hp=e5a23438dbdcb989abe8d1f4556bc4f1bd689fa5;hb=e3272a316d113dd9c0c6f01f3087ab14f945e76b;hpb=65a0002eb560b7248cbb0b4f143d00053b66bccc diff --git a/configure.ac b/configure.ac index e5a23438..1190821c 100644 --- a/configure.ac +++ b/configure.ac @@ -87,12 +87,12 @@ AC_DEFUN([add_cmdline],[$(for i in $@; do printf "${i}.cmdline "; done)]) all_errlist_objs="server mp3_afh afh_common vss command net string signal time daemon stat crypt http_send close_on_fork ipc acl afh fade amp_filter dccp_send fd user_list chunk_queue afs aft mood score attribute blob ringbuffer -playlist sha1 sched audiod grab_client filter_common wav_filter compress_filter +playlist sched audiod grab_client filter_common wav_filter compress_filter http_recv dccp_recv recv_common write_common file_write audiod_command client_common recv stdout filter stdin audioc write client exec send_common ggo udp_recv udp_send color fec fecdec_filter prebuffer_filter mm server_command_list afs_command_list audiod_command_list bitstream imdct wma_afh -wma_common wmadec_filter buffer_tree +wma_common wmadec_filter buffer_tree crypt_common " executables="recv filter audioc write client afh audiod" @@ -115,10 +115,10 @@ audioc_errlist_objs="audioc string net fd" audioc_ldflags="" audiod_cmdline_objs="add_cmdline(audiod compress_filter http_recv dccp_recv file_write client amp_filter udp_recv prebuffer_filter)" -audiod_errlist_objs="audiod signal string daemon stat net +audiod_errlist_objs="audiod signal string daemon stat net crypt_common time grab_client filter_common wav_filter compress_filter amp_filter http_recv dccp_recv recv_common fd sched write_common file_write audiod_command crypt fecdec_filter - client_common ggo udp_recv color fec prebuffer_filter sha1 audiod_command_list + client_common ggo udp_recv color fec prebuffer_filter audiod_command_list bitstream imdct wma_common wmadec_filter buffer_tree" audiod_ldflags="-lm" audiod_audio_formats="wma" @@ -129,9 +129,9 @@ afh_ldflags="" server_cmdline_objs="add_cmdline(server)" server_errlist_objs="server afh_common mp3_afh vss command net string signal - time daemon crypt http_send close_on_fork mm + time daemon http_send close_on_fork mm crypt crypt_common ipc dccp_send fd user_list chunk_queue afs aft mood score attribute - blob playlist sha1 sched acl send_common udp_send color fec + blob playlist sched acl send_common udp_send color fec server_command_list afs_command_list wma_afh wma_common" server_ldflags="" server_audio_formats="mp3 wma" @@ -144,8 +144,8 @@ writers=" file" default_writer="FILE_WRITE" client_cmdline_objs="add_cmdline(client)" -client_errlist_objs="client net string crypt fd sched stdin stdout time - client_common sha1 buffer_tree" +client_errlist_objs="client net string fd sched stdin stdout time + client_common buffer_tree crypt crypt_common" client_ldflags="" gui_cmdline_objs="add_cmdline(gui)" @@ -273,46 +273,52 @@ fi CPPFLAGS="$OLD_CPPFLAGS" LDFLAGS="$OLD_LDFLAGS" LIBS="$OLD_LIBS" -########################################################################### ssl -dnl @synopsis CHECK_SSL -dnl -dnl based on the follwing macro from the autoconf archive -dnl -dnl @category InstalledPackages -dnl @author Mark Ethan Trostler -dnl @version 2003-01-28 -dnl @license AllPermissive - -AC_DEFUN([CHECK_SSL], -[ - for ssldir in $1 /usr/local/ssl /usr/lib/ssl /usr/ssl /usr/pkg /usr/local /usr; do - AC_MSG_CHECKING(for openssl in $ssldir) - if test -f "$ssldir/include/openssl/ssl.h"; then - found_ssl="yes" - AC_MSG_RESULT(yes) - SSL_CFLAGS="-I$ssldir/include" - SSL_CPPFLAGS="-I$ssldir/include" - break - fi - AC_MSG_RESULT(no) - done - if test x_$found_ssl != x_yes; then - AC_MSG_ERROR(Cannot find ssl libraries) - else - SSL_LIBS="-lssl -lcrypto"; - SSL_LDFLAGS="-L$ssldir/lib"; +###################################################################### openssl +OLD_CPPFLAGS="$CPPFLAGS" +OLD_LD_FLAGS="$LDFLAGS" +OLD_LIBS="$LIBS" +have_openssl="yes" +AC_ARG_WITH(openssl_headers, [AC_HELP_STRING(--with-openssl-headers=dir, + [look for openssl headers also in dir])]) +if test -n "$with_openssl_headers"; then + openssl_cppflags="-I$with_openssl_headers" + CPPFLAGS="$CPPFLAGS $openssl_cppflags" +fi +AC_ARG_WITH(openssl_libs, [AC_HELP_STRING(--with-openssl-libs=dir, + [look for openssl libraries also in dir])]) +if test -n "$with_openssl_libs"; then + openssl_libs="-L$with_openssl_libs" + LDFLAGS="$LDFLAGS $openssl_libs" +fi +AC_CHECK_HEADER(openssl/ssl.h, [], [have_openssl="no"]) +AC_CHECK_LIB([crypto], [RAND_bytes], [], [have_openssl="no"]) +if test "$have_openssl" = "no" -a -z "$with_openssl_headers$with_openssl_libs"; then + # try harder: openssl is sometimes installed in /usr/local/ssl + openssl_cppflags="-I/usr/local/ssl/include" + CPPFLAGS="$CPPFLAGS $openssl_cppflags" + openssl_libs="-L/usr/local/ssl/lib" + LDFLAGS="$LDFLAGS $openssl_libs" + # clear cache + unset ac_cv_header_openssl_ssl_h 2> /dev/null + unset ac_cv_lib_crypto_RAND_bytes 2> /dev/null + AC_CHECK_HEADER(openssl/ssl.h, [have_openssl="yes"], []) + if test "$have_openssl" = "yes"; then + AC_CHECK_LIB([crypto], [RAND_bytes], [], [have_openssl="no"]) fi - AC_SUBST(SSL_CPPFLAGS) -])dnl - -AC_ARG_ENABLE(ssldir, [AS_HELP_STRING(--enable-ssldir=path, - [Search for openssl also in path.])]) -if test "$enable_ssldir" = "yes"; then enable_ssldir=""; fi -CHECK_SSL($enable_ssldir) -server_ldflags="$server_ldflags $SSL_LDFLAGS $SSL_LIBS" -client_ldflags="$client_ldflags $SSL_LDFLAGS $SSL_LIBS" -audiod_ldflags="$audiod_ldflags $SSL_LDFLAGS $SSL_LIBS" - +fi +if test "$have_openssl" = "yes"; then + AC_DEFINE(HAVE_OPENSSL, 1, [define to 1 to turn on openssl support]) + AC_SUBST(openssl_cppflags) + openssl_libs="$openssl_libs -lssl -lcrypto" + server_ldflags="$server_ldflags $openssl_libs" + client_ldflags="$client_ldflags $openssl_libs" + audiod_ldflags="$audiod_ldflags $openssl_libs" +else + AC_MSG_ERROR([openssl libraries not found]) +fi +CPPFLAGS="$OLD_CPPFLAGS" +LDFLAGS="$OLD_LDFLAGS" +LIBS="$OLD_LIBS" ########################################################################### libsocket AC_CHECK_LIB([c], [socket], [socket_lib=], @@ -721,6 +727,67 @@ fi CPPFLAGS="$OLD_CPPFLAGS" LDFLAGS="$OLD_LDFLAGS" LIBS="$OLD_LIBS" +########################################################################### libao +OLD_CPPFLAGS="$CPPFLAGS" +OLD_LD_FLAGS="$LDFLAGS" +OLD_LIBS="$LIBS" + +have_ao="yes" +AC_ARG_WITH(ao_headers, [AC_HELP_STRING(--with-ao-headers=dir, + [look for ao/ao.h also in dir])]) +if test -n "$with_ao_headers"; then + ao_cppflags="-I$with_ao_headers" + CPPFLAGS="$CPPFLAGS $ao_cppflags" +fi +AC_ARG_WITH(ao_libs, [AC_HELP_STRING(--with-ao-libs=dir, + [look for libao also in dir])]) +if test -n "$with_ao_libs"; then + ao_libs="-L$with_ao_libs" + LDFLAGS="$LDFLAGS $ao_libs" +fi +msg="no libao support for para_audiod/para_write" +AC_CHECK_HEADERS([ao/ao.h], [ + ], [ + have_ao="no" + AC_MSG_WARN([ao.h not found, $msg]) +]) +if test "$have_ao" = "yes"; then + AC_CHECK_LIB([ao], [ao_initialize], [], [ + have_ao="no" + AC_MSG_WARN([ao lib not found or not working, $msg]) + ]) +fi +if test "$have_ao" = "yes"; then + AC_CHECK_HEADERS([pthread.h], [ + ], [ + have_ao="no" + AC_MSG_WARN([pthread.h not found, $msg]) + ]) +fi +if test "$have_ao" = "yes"; then + AC_CHECK_LIB([pthread], [pthread_create], [], [ + have_ao="no" + AC_MSG_WARN([pthread lib not found or not working, $msg]) + ]) +fi +if test "$have_ao" = "yes"; then + all_errlist_objs="$all_errlist_objs ao_write" + audiod_errlist_objs="$audiod_errlist_objs ao_write" + audiod_cmdline_objs="$audiod_cmdline_objs add_cmdline(ao_write)" + audiod_ldflags="$audiod_ldflags -lao -lpthread" + + write_errlist_objs="$write_errlist_objs ao_write" + write_cmdline_objs="$write_cmdline_objs add_cmdline(ao_write)" + write_ldflags="$write_ldflags $ao_libs -lao -lpthread" + writers="$writers ao" + AC_SUBST(ao_cppflags) +fi + +CPPFLAGS="$OLD_CPPFLAGS" +LDFLAGS="$OLD_LDFLAGS" +LIBS="$OLD_LIBS" + + AC_SUBST(install_sh, [$INSTALL]) AC_CONFIG_FILES([Makefile]) @@ -740,7 +807,7 @@ for obj in $all_errlist_objs; do done AC_DEFINE_UNQUOTED(DEFINE_ERRLIST_OBJECT_ENUM, [enum {$SS NUM_SS}], - [list of all objects that use paraslash's error facility] + [list of all objects that use the paraslash error facility] ) ################################################################## status items