Modularise the RAOP stuff that requires OpenSSL and make it optional at compile time

This commit is contained in:
Colin Guthrie 2008-08-03 22:46:21 +01:00
parent c3d8bb5b34
commit 8715121755
6 changed files with 68 additions and 8 deletions

View file

@ -1000,6 +1000,41 @@ AC_SUBST(POLKIT_LIBS)
AC_SUBST(HAVE_POLKIT)
AM_CONDITIONAL([HAVE_POLKIT], [test "x$HAVE_POLKIT" = x1])
#### OpenSSL support (optional) ####
AC_ARG_ENABLE([openssl],
AC_HELP_STRING([--disable-openssl], [Disable OpenSSL support (used for Airtunes/RAOP)]),
[
case "${enableval}" in
yes) openssl=yes ;;
no) openssl=no ;;
*) AC_MSG_ERROR(bad value ${enableval} for --disable-openssl) ;;
esac
],
[openssl=auto])
if test "x${openssl}" != xno ; then
PKG_CHECK_MODULES(OPENSSL, [ openssl > 0.9 ],
[
HAVE_OPENSSL=1
AC_DEFINE([HAVE_OPENSSL], 1, [Have OpenSSL])
],
[
HAVE_OPENSSL=0
if test "x$openssl" = xyes ; then
AC_MSG_ERROR([*** OpenSSL support not found])
fi
])
else
HAVE_OPENSSL=0
fi
AC_SUBST(OPENSSL_CFLAGS)
AC_SUBST(OPENSSL_LIBS)
AC_SUBST(HAVE_OPENSSL)
AM_CONDITIONAL([HAVE_OPENSSL], [test "x$HAVE_OPENSSL" = x1])
### Build and Install man pages ###
AC_ARG_ENABLE(manpages,
AS_HELP_STRING([--disable-manpages],[Disable building and installation of man pages]),
@ -1201,6 +1236,11 @@ if test "x${HAVE_POLKIT}" = "x1" ; then
ENABLE_POLKIT=yes
fi
ENABLE_OPENSSL=no
if test "x${HAVE_OPENSSL}" = "x1" ; then
ENABLE_OPENSSL=yes
fi
ENABLE_PER_USER_ESOUND_SOCKET=no
if test "x$per_user_esound_socket" = "x1" ; then
ENABLE_PER_USER_ESOUND_SOCKET=yes
@ -1232,6 +1272,7 @@ echo "
Enable TCP Wrappers: ${ENABLE_TCPWRAP}
Enable libsamplerate: ${ENABLE_LIBSAMPLERATE}
Enable PolicyKit: ${ENABLE_POLKIT}
Enable OpenSSL (for Airtunes): ${ENABLE_OPENSSL}
System User: ${PA_SYSTEM_USER}
System Group: ${PA_SYSTEM_GROUP}
Realtime Group: ${PA_REALTIME_GROUP}

View file

@ -62,6 +62,10 @@ AM_CFLAGS += -DPA_MACHINE_ID=\"$(localstatedir)/lib/dbus/machine-id\"
# This cool debug trap works on i386/gcc only
AM_CFLAGS += '-DDEBUG_TRAP=__asm__("int $$3")'
if HAVE_OPENSSL
AM_CFLAGS += -I$(top_builddir)/src/modules/raop
endif
AM_LIBADD = $(PTHREAD_LIBS) $(INTLLIBS)
AM_LDADD = $(PTHREAD_LIBS) $(INTLLIBS)
@ -89,6 +93,7 @@ PA_THREAD_OBJS = \
pulsecore/semaphore-posix.c pulsecore/semaphore.h
endif
###################################
# Extra files #
###################################
@ -1009,11 +1014,16 @@ librtp_la_SOURCES = \
modules/rtp/sdp.c modules/rtp/sdp.h \
modules/rtp/sap.c modules/rtp/sap.h \
modules/rtp/rtsp_client.c modules/rtp/rtsp_client.h \
modules/rtp/raop_client.c modules/rtp/raop_client.h \
modules/rtp/headerlist.c modules/rtp/headerlist.h \
modules/rtp/base64.c modules/rtp/base64.h
modules/rtp/headerlist.c modules/rtp/headerlist.h
librtp_la_LDFLAGS = -avoid-version
librtp_la_LIBADD = $(AM_LIBADD) libsocket-util.la libiochannel.la libsocket-client.la libioline.la libpulsecore.la -lssl
librtp_la_LIBADD = $(AM_LIBADD) libsocket-util.la libiochannel.la libsocket-client.la libioline.la libpulsecore.la
libraop_la_SOURCES = \
modules/raop/raop_client.c modules/raop/raop_client.h \
modules/raop/base64.c modules/raop/base64.h
libraop_la_CFLAGS = $(AM_CFLAGS) $(OPENSSL_CFLAGS)
libraop_la_LDFLAGS = -avoid-version
libraop_la_LIBADD = $(AM_LIBADD) $(OPENSSL_LIBS) libsocket-util.la libiochannel.la libsocket-client.la libioline.la libpulsecore.la librtp.la
# X11
@ -1060,7 +1070,6 @@ modlibexec_LTLIBRARIES += \
module-remap-sink.la \
module-ladspa-sink.la \
module-esound-sink.la \
module-raop-sink.la \
module-tunnel-sink.la \
module-tunnel-source.la \
module-position-event-sounds.la
@ -1127,8 +1136,7 @@ endif
if HAVE_AVAHI
modlibexec_LTLIBRARIES += \
module-zeroconf-publish.la \
module-zeroconf-discover.la \
module-raop-discover.la
module-zeroconf-discover.la
endif
if HAVE_LIRC
@ -1186,6 +1194,17 @@ pulselibexec_PROGRAMS += \
proximity-helper
endif
if HAVE_OPENSSL
modlibexec_LTLIBRARIES += \
libraop.la \
module-raop-sink.la
if HAVE_AVAHI
modlibexec_LTLIBRARIES += \
module-raop-discover.la
endif
endif
# These are generated by a M4 script
SYMDEF_FILES = \
@ -1609,7 +1628,7 @@ module_bluetooth_device_la_CFLAGS = $(AM_CFLAGS) $(DBUS_CFLAGS)
# Apple Airtunes/RAOP
module_raop_sink_la_SOURCES = modules/module-raop-sink.c
module_raop_sink_la_LDFLAGS = -module -avoid-version
module_raop_sink_la_LIBADD = $(AM_LIBADD) libpulsecore.la libiochannel.la librtp.la
module_raop_sink_la_LIBADD = $(AM_LIBADD) libpulsecore.la libiochannel.la librtp.la libraop.la
module_raop_discover_la_SOURCES = modules/module-raop-discover.c
module_raop_discover_la_LDFLAGS = -module -avoid-version