From: Sean Hefty Date: Mon, 9 Jul 2012 21:58:14 +0000 (-0700) Subject: rsocket: Build rspreload library as part of build X-Git-Url: https://openfabrics.org/gitweb/?a=commitdiff_plain;h=edf7a87dbaa7ccfc4fd384cbaf40671283deb734;p=~shefty%2Flibrdmacm.git rsocket: Build rspreload library as part of build Build rspreload.so, but do not install it. This avoids the need for the user to build it manually, without risking that the preload library intercepts socket calls without the user's explicit knowledge. Signed-off-by: Sean Hefty --- diff --git a/Makefile.am b/Makefile.am index 51b2f899..3f1280fc 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,16 +1,20 @@ INCLUDES = -I$(srcdir)/include lib_LTLIBRARIES = src/librdmacm.la +noinst_LTLIBRARIES = src/librspreload.la ACLOCAL_AMFLAGS = -I config AM_CFLAGS = -g -Wall -D_GNU_SOURCE -DSYSCONFDIR=\"$(sysconfdir)\" -DRDMADIR=\"@rdmadir@\" src_librdmacm_la_CFLAGS = $(AM_CFLAGS) +src_librspreload_la_CFLAGS = $(AM_CFLAGS) if HAVE_LD_VERSION_SCRIPT librdmacm_version_script = -Wl,--version-script=$(srcdir)/src/librdmacm.map + librspreload_version_script = -Wl,--version-script=$(srcdir)/src/librspreload.map else librdmacm_version_script = + librspreload_version_script = endif src_librdmacm_la_SOURCES = src/cma.c src/addrinfo.c src/acm.c \ @@ -19,6 +23,11 @@ src_librdmacm_la_LDFLAGS = -version-info 1 -export-dynamic \ $(librdmacm_version_script) src_librdmacm_la_DEPENDENCIES = $(srcdir)/src/librdmacm.map +src_librspreload_la_SOURCES = src/preload.c src/indexer.c +src_librspreload_la_LDFLAGS = -version-info 1 -export-dynamic \ + $(librspreload_version_script) +src_librspreload_la_LIBADD = $(top_builddir)/src/librdmacm.la + bin_PROGRAMS = examples/ucmatose examples/rping examples/udaddy examples/mckey \ examples/rdma_client examples/rdma_server examples/rdma_xclient \ examples/rdma_xserver examples/rstream examples/rcopy diff --git a/src/librspreload.map b/src/librspreload.map new file mode 100644 index 00000000..554050da --- /dev/null +++ b/src/librspreload.map @@ -0,0 +1,30 @@ +RSPRELOAD_1.0 { + global: + socket; + bind; + listen; + accept; + connect; + shutdown; + close; + recv; + recvfrom; + recvmsg; + send; + sendto; + sendmsg; + read; + readv; + write; + writev; + poll; + select; + getpeername; + getsockname; + setsockopt; + getsockopt; + fcntl; + poll; + select; + local: *; +};