]> git.openfabrics.org - ~ardavis/dapl.git/commitdiff
r5879: Add GNU Autotools support and an RPM spec file
authorArlin Davis <ardavis@ichips.intel.com>
Fri, 17 Mar 2006 22:02:18 +0000 (22:02 +0000)
committerJames Lentini <jlentini@netapp.com>
Fri, 17 Mar 2006 22:02:18 +0000 (22:02 +0000)
Signed-off-by: Arlin Davis <ardavis@ichips.intel.com>
Signed-off-by: James Lentini <jlentini@netapp.com>
14 files changed:
AUTHORS [new file with mode: 0644]
COPYING [new file with mode: 0644]
Makefile.am [new file with mode: 0644]
autogen.sh [new file with mode: 0755]
configure.in [new file with mode: 0644]
dapl/common/dapl_init.h
dapl/openib_cma/dapl_ib_util.h
dapl/openib_scm/dapl_ib_util.h
dapl/udapl/dapl_init.c
dapl/udapl/libdaplcma.map [new file with mode: 0644]
dapl/udapl/libdaplscm.map [new file with mode: 0644]
dat/udat/libdat.map [new file with mode: 0644]
doc/dat.conf
libdat.spec [new file with mode: 0644]

diff --git a/AUTHORS b/AUTHORS
new file mode 100644 (file)
index 0000000..7c609ba
--- /dev/null
+++ b/AUTHORS
@@ -0,0 +1,16 @@
+This is an incomplete list of people who have contributed to the 
+DAPL project:
+
+ Caitlin Bestler
+ Philip Christopher
+ Jay Danielsen
+ Arlin Davis
+ Tom Duffy
+ Matthew Finlay
+ Jimmy Hill
+ James Lentini
+ Gil Rubin
+ Steve Sears
+ Randy Smith
+ Anthony Topper
+ Steve Wise 
diff --git a/COPYING b/COPYING
new file mode 100644 (file)
index 0000000..2012c04
--- /dev/null
+++ b/COPYING
@@ -0,0 +1,36 @@
+#
+# Copyright (c) 2002-2005, Network Appliance, Inc. All rights reserved.
+# Copyright (c) 2005 Voltaire Inc.  All rights reserved.
+# Copyright (c) 2005 Intel Corporation. All rights reserved.
+# Copyright (c) 2004-2005, Mellanox Technologies, Inc. All rights reserved. 
+# Copyright (c) 2003 Topspin Corporation.  All rights reserved. 
+# Copyright (c) 2005 Sun Microsystems, Inc. All rights reserved.
+#
+# This Software is licensed under one of the following licenses:
+#
+# 1) under the terms of the "Common Public License 1.0" a copy of which is
+#    in the file LICENSE.txt in the root directory. The license is also
+#    available from the Open Source Initiative, see
+#    http://www.opensource.org/licenses/cpl.php.
+#
+# 2) under the terms of the "The BSD License" a copy of which is in the file
+#    LICENSE2.txt in the root directory. The license is also available from
+#    the Open Source Initiative, see
+#    http://www.opensource.org/licenses/bsd-license.php.
+#
+# 3) under the terms of the "GNU General Public License (GPL) Version 2" a 
+#    copy of which is in the file LICENSE3.txt in the root directory. The 
+#    license is also available from the Open Source Initiative, see
+#    http://www.opensource.org/licenses/gpl-license.php.
+#
+# Licensee has the right to choose one of the above licenses.
+#
+# Redistributions of source code must retain the above copyright
+# notice and one of the license notices.
+#
+# Redistributions in binary form must reproduce both the above copyright
+# notice, one of the license notices in the documentation
+# and/or other materials provided with the distribution.
+#
+
+
diff --git a/Makefile.am b/Makefile.am
new file mode 100644 (file)
index 0000000..e09001b
--- /dev/null
@@ -0,0 +1,352 @@
+# $Id: $
+
+# Check for RedHat, needed for ia64 udapl atomic operations (IA64_FETCHADD syntax)
+if OS_RHEL
+OSFLAGS=-DREDHAT_EL4
+else
+OSFLAGS=
+endif
+
+if DEBUG
+DBGFLAGS = -ggdb -DDAPL_DBG
+else
+DBGFLAGS = -g
+endif
+
+sysconf_DATA = doc/dat.conf
+
+datlibdir = $(libdir)
+dapllibcmadir = $(libdir)
+dapllibscmdir = $(libdir)
+
+datlib_LTLIBRARIES = dat/udat/libdat.la
+dapllibcma_LTLIBRARIES = dapl/udapl/libdaplcma.la
+dapllibscm_LTLIBRARIES = dapl/udapl/libdaplscm.la
+
+dat_udat_libdat_la_CFLAGS = -Wall $(DBGFLAGS) -D_GNU_SOURCE $(OSFLAGS) \
+                               -I$(srcdir)/dat/include/ -I$(srcdir)/dat/udat/ \
+                               -I$(srcdir)/dat/udat/linux -I$(srcdir)/dat/common/ 
+
+dapl_udapl_libdaplcma_la_CFLAGS = -Wall $(DBGFLAGS) -D_GNU_SOURCE $(OSFLAGS) \
+                               -DOPENIB -DCQ_WAIT_OBJECT \
+                               -I$(srcdir)/dat/include/ -I$(srcdir)/dapl/include/ \
+                               -I$(srcdir)/dapl/common -I$(srcdir)/dapl/udapl/linux \
+                               -I$(srcdir)/dapl/openib_cma 
+               
+dapl_udapl_libdaplscm_la_CFLAGS = -Wall $(DBGFLAGS) -D_GNU_SOURCE $(OSFLAGS) \
+                               -DOPENIB -DCQ_WAIT_OBJECT \
+                               -I$(srcdir)/dat/include/ -I$(srcdir)/dapl/include/ \
+                               -I$(srcdir)/dapl/common -I$(srcdir)/dapl/udapl/linux \
+                               -I$(srcdir)/dapl/openib_scm 
+
+if HAVE_LD_VERSION_SCRIPT
+    dat_version_script = -Wl,--version-script=$(srcdir)/dat/udat/libdat.map
+    daplcma_version_script = -Wl,--version-script=$(srcdir)/dapl/udapl/libdaplcma.map
+    daplscm_version_script = -Wl,--version-script=$(srcdir)/dapl/udapl/libdaplscm.map
+                       
+else
+    dat_version_script = 
+    daplcma_version_script = 
+    daplscm_version_script = 
+    
+endif
+
+#
+# uDAT: libdat.so
+#
+dat_udat_libdat_la_SOURCES = dat/udat/udat.c \
+                       dat/udat/udat_api.c \
+                       dat/udat/udat_sr_parser.c \
+                       dat/udat/linux/dat_osd.c \
+                       dat/common/dat_api.c \
+                       dat/common/dat_dictionary.c \
+                       dat/common/dat_strerror.c \
+                       dat/common/dat_init.c \
+                       dat/common/dat_dr.c \
+                       dat/common/dat_sr.c
+
+dat_udat_libdat_la_LDFLAGS = -version-info 1:2:0 $(dat_version_script) -ldl 
+
+#
+# uDAPL OpenIB uCMA version: libdaplcma.so
+#
+dapl_udapl_libdaplcma_la_SOURCES = dapl/udapl/dapl_init.c \
+        dapl/udapl/dapl_evd_create.c               \
+        dapl/udapl/dapl_evd_query.c                \
+        dapl/udapl/dapl_cno_create.c               \
+        dapl/udapl/dapl_cno_modify_agent.c         \
+        dapl/udapl/dapl_cno_free.c                 \
+        dapl/udapl/dapl_cno_wait.c                 \
+        dapl/udapl/dapl_cno_query.c                \
+        dapl/udapl/dapl_lmr_create.c               \
+        dapl/udapl/dapl_evd_wait.c                 \
+        dapl/udapl/dapl_evd_disable.c              \
+        dapl/udapl/dapl_evd_enable.c               \
+        dapl/udapl/dapl_evd_modify_cno.c           \
+        dapl/udapl/dapl_evd_set_unwaitable.c       \
+        dapl/udapl/dapl_evd_clear_unwaitable.c     \
+        dapl/udapl/linux/dapl_osd.c                \
+        dapl/common/dapl_cookie.c                   \
+        dapl/common/dapl_cr_accept.c                \
+        dapl/common/dapl_cr_query.c                 \
+        dapl/common/dapl_cr_reject.c                \
+        dapl/common/dapl_cr_util.c                  \
+        dapl/common/dapl_cr_callback.c              \
+        dapl/common/dapl_cr_handoff.c               \
+        dapl/common/dapl_ep_connect.c               \
+        dapl/common/dapl_ep_create.c                \
+        dapl/common/dapl_ep_disconnect.c            \
+        dapl/common/dapl_ep_dup_connect.c           \
+        dapl/common/dapl_ep_free.c                  \
+        dapl/common/dapl_ep_reset.c                 \
+        dapl/common/dapl_ep_get_status.c            \
+        dapl/common/dapl_ep_modify.c                \
+        dapl/common/dapl_ep_post_rdma_read.c        \
+        dapl/common/dapl_ep_post_rdma_write.c       \
+        dapl/common/dapl_ep_post_recv.c             \
+        dapl/common/dapl_ep_post_send.c             \
+        dapl/common/dapl_ep_query.c                 \
+        dapl/common/dapl_ep_util.c                  \
+        dapl/common/dapl_evd_dequeue.c              \
+        dapl/common/dapl_evd_free.c                 \
+        dapl/common/dapl_evd_post_se.c              \
+        dapl/common/dapl_evd_resize.c               \
+        dapl/common/dapl_evd_util.c                 \
+        dapl/common/dapl_evd_cq_async_error_callb.c \
+        dapl/common/dapl_evd_qp_async_error_callb.c \
+        dapl/common/dapl_evd_un_async_error_callb.c \
+        dapl/common/dapl_evd_connection_callb.c     \
+        dapl/common/dapl_evd_dto_callb.c            \
+        dapl/common/dapl_get_consumer_context.c     \
+        dapl/common/dapl_get_handle_type.c          \
+        dapl/common/dapl_hash.c                     \
+        dapl/common/dapl_hca_util.c                 \
+        dapl/common/dapl_ia_close.c                 \
+        dapl/common/dapl_ia_open.c                  \
+        dapl/common/dapl_ia_query.c                 \
+        dapl/common/dapl_ia_util.c                  \
+        dapl/common/dapl_llist.c                    \
+        dapl/common/dapl_lmr_free.c                 \
+        dapl/common/dapl_lmr_query.c                \
+        dapl/common/dapl_lmr_util.c                 \
+        dapl/common/dapl_lmr_sync_rdma_read.c       \
+        dapl/common/dapl_lmr_sync_rdma_write.c      \
+        dapl/common/dapl_mr_util.c                  \
+        dapl/common/dapl_provider.c                 \
+        dapl/common/dapl_sp_util.c                  \
+        dapl/common/dapl_psp_create.c               \
+        dapl/common/dapl_psp_create_any.c           \
+        dapl/common/dapl_psp_free.c                 \
+        dapl/common/dapl_psp_query.c                \
+        dapl/common/dapl_pz_create.c                \
+        dapl/common/dapl_pz_free.c                  \
+        dapl/common/dapl_pz_query.c                 \
+        dapl/common/dapl_pz_util.c                  \
+        dapl/common/dapl_rmr_create.c               \
+        dapl/common/dapl_rmr_free.c                 \
+        dapl/common/dapl_rmr_bind.c                 \
+        dapl/common/dapl_rmr_query.c                \
+        dapl/common/dapl_rmr_util.c                 \
+        dapl/common/dapl_rsp_create.c               \
+        dapl/common/dapl_rsp_free.c                 \
+        dapl/common/dapl_rsp_query.c                \
+        dapl/common/dapl_cno_util.c                 \
+        dapl/common/dapl_set_consumer_context.c     \
+        dapl/common/dapl_ring_buffer_util.c         \
+        dapl/common/dapl_name_service.c             \
+        dapl/common/dapl_timer_util.c               \
+        dapl/common/dapl_ep_create_with_srq.c       \
+        dapl/common/dapl_ep_recv_query.c            \
+        dapl/common/dapl_ep_set_watermark.c         \
+        dapl/common/dapl_srq_create.c               \
+        dapl/common/dapl_srq_free.c                 \
+        dapl/common/dapl_srq_query.c                \
+        dapl/common/dapl_srq_resize.c               \
+        dapl/common/dapl_srq_post_recv.c            \
+        dapl/common/dapl_srq_set_lw.c               \
+        dapl/common/dapl_srq_util.c                 \
+        dapl/common/dapl_debug.c                    \
+       dapl/openib_cma/dapl_ib_util.c              \
+       dapl/openib_cma/dapl_ib_cq.c                \
+       dapl/openib_cma/dapl_ib_qp.c                \
+       dapl/openib_cma/dapl_ib_cm.c                \
+        dapl/openib_cma/dapl_ib_mem.c               
+
+dapl_udapl_libdaplcma_la_LDFLAGS = -version-info 1:2:0 $(daplcma_version_script) \
+                                  -lpthread -libverbs -lrdmacm   
+                               
+
+#        
+# uDAPL OpenIB Socket CM version: libdaplscm.so
+#
+dapl_udapl_libdaplscm_la_SOURCES = dapl/udapl/dapl_init.c \
+        dapl/udapl/dapl_evd_create.c               \
+        dapl/udapl/dapl_evd_query.c                \
+        dapl/udapl/dapl_cno_create.c               \
+        dapl/udapl/dapl_cno_modify_agent.c         \
+        dapl/udapl/dapl_cno_free.c                 \
+        dapl/udapl/dapl_cno_wait.c                 \
+        dapl/udapl/dapl_cno_query.c                \
+        dapl/udapl/dapl_lmr_create.c               \
+        dapl/udapl/dapl_evd_wait.c                 \
+        dapl/udapl/dapl_evd_disable.c              \
+        dapl/udapl/dapl_evd_enable.c               \
+        dapl/udapl/dapl_evd_modify_cno.c           \
+        dapl/udapl/dapl_evd_set_unwaitable.c       \
+        dapl/udapl/dapl_evd_clear_unwaitable.c     \
+        dapl/udapl/linux/dapl_osd.c                \
+        dapl/common/dapl_cookie.c                   \
+        dapl/common/dapl_cr_accept.c                \
+        dapl/common/dapl_cr_query.c                 \
+        dapl/common/dapl_cr_reject.c                \
+        dapl/common/dapl_cr_util.c                  \
+        dapl/common/dapl_cr_callback.c              \
+        dapl/common/dapl_cr_handoff.c               \
+        dapl/common/dapl_ep_connect.c               \
+        dapl/common/dapl_ep_create.c                \
+        dapl/common/dapl_ep_disconnect.c            \
+        dapl/common/dapl_ep_dup_connect.c           \
+        dapl/common/dapl_ep_free.c                  \
+        dapl/common/dapl_ep_reset.c                 \
+        dapl/common/dapl_ep_get_status.c            \
+        dapl/common/dapl_ep_modify.c                \
+        dapl/common/dapl_ep_post_rdma_read.c        \
+        dapl/common/dapl_ep_post_rdma_write.c       \
+        dapl/common/dapl_ep_post_recv.c             \
+        dapl/common/dapl_ep_post_send.c             \
+        dapl/common/dapl_ep_query.c                 \
+        dapl/common/dapl_ep_util.c                  \
+        dapl/common/dapl_evd_dequeue.c              \
+        dapl/common/dapl_evd_free.c                 \
+        dapl/common/dapl_evd_post_se.c              \
+        dapl/common/dapl_evd_resize.c               \
+        dapl/common/dapl_evd_util.c                 \
+        dapl/common/dapl_evd_cq_async_error_callb.c \
+        dapl/common/dapl_evd_qp_async_error_callb.c \
+        dapl/common/dapl_evd_un_async_error_callb.c \
+        dapl/common/dapl_evd_connection_callb.c     \
+        dapl/common/dapl_evd_dto_callb.c            \
+        dapl/common/dapl_get_consumer_context.c     \
+        dapl/common/dapl_get_handle_type.c          \
+        dapl/common/dapl_hash.c                     \
+        dapl/common/dapl_hca_util.c                 \
+        dapl/common/dapl_ia_close.c                 \
+        dapl/common/dapl_ia_open.c                  \
+        dapl/common/dapl_ia_query.c                 \
+        dapl/common/dapl_ia_util.c                  \
+        dapl/common/dapl_llist.c                    \
+        dapl/common/dapl_lmr_free.c                 \
+        dapl/common/dapl_lmr_query.c                \
+        dapl/common/dapl_lmr_util.c                 \
+        dapl/common/dapl_lmr_sync_rdma_read.c       \
+        dapl/common/dapl_lmr_sync_rdma_write.c      \
+        dapl/common/dapl_mr_util.c                  \
+        dapl/common/dapl_provider.c                 \
+        dapl/common/dapl_sp_util.c                  \
+        dapl/common/dapl_psp_create.c               \
+        dapl/common/dapl_psp_create_any.c           \
+        dapl/common/dapl_psp_free.c                 \
+        dapl/common/dapl_psp_query.c                \
+        dapl/common/dapl_pz_create.c                \
+        dapl/common/dapl_pz_free.c                  \
+        dapl/common/dapl_pz_query.c                 \
+        dapl/common/dapl_pz_util.c                  \
+        dapl/common/dapl_rmr_create.c               \
+        dapl/common/dapl_rmr_free.c                 \
+        dapl/common/dapl_rmr_bind.c                 \
+        dapl/common/dapl_rmr_query.c                \
+        dapl/common/dapl_rmr_util.c                 \
+        dapl/common/dapl_rsp_create.c               \
+        dapl/common/dapl_rsp_free.c                 \
+        dapl/common/dapl_rsp_query.c                \
+        dapl/common/dapl_cno_util.c                 \
+        dapl/common/dapl_set_consumer_context.c     \
+        dapl/common/dapl_ring_buffer_util.c         \
+        dapl/common/dapl_name_service.c             \
+        dapl/common/dapl_timer_util.c               \
+        dapl/common/dapl_ep_create_with_srq.c       \
+        dapl/common/dapl_ep_recv_query.c            \
+        dapl/common/dapl_ep_set_watermark.c         \
+        dapl/common/dapl_srq_create.c               \
+        dapl/common/dapl_srq_free.c                 \
+        dapl/common/dapl_srq_query.c                \
+        dapl/common/dapl_srq_resize.c               \
+        dapl/common/dapl_srq_post_recv.c            \
+        dapl/common/dapl_srq_set_lw.c               \
+        dapl/common/dapl_srq_util.c                 \
+        dapl/common/dapl_debug.c                    \
+       dapl/openib_scm/dapl_ib_util.c              \
+       dapl/openib_scm/dapl_ib_cq.c                \
+       dapl/openib_scm/dapl_ib_qp.c                \
+       dapl/openib_scm/dapl_ib_cm.c                \
+        dapl/openib_scm/dapl_ib_mem.c               
+
+dapl_udapl_libdaplscm_la_LDFLAGS = -version-info 1:2:0 $(daplscm_version_script) \
+                                  -lpthread -libverbs
+                                   
+libdatincludedir = $(includedir)/dat
+
+libdatinclude_HEADERS = dat/include/dat/dat.h \
+                       dat/include/dat/dat_error.h \
+                       dat/include/dat/dat_platform_specific.h \
+                       dat/include/dat/dat_redirection.h \
+                       dat/include/dat/dat_registry.h \
+                       dat/include/dat/dat_vendor_specific.h \
+                       dat/include/dat/udat_config.h \
+                       dat/include/dat/udat.h \
+                       dat/include/dat/udat_redirection.h \
+                       dat/include/dat/udat_vendor_specific.h 
+                       
+EXTRA_DIST = dat/common/dat_dictionary.h \
+            dat/common/dat_dr.h \
+            dat/common/dat_init.h \
+            dat/common/dat_sr.h \
+            dat/udat/udat_sr_parser.h \
+            dat/udat/linux/dat_osd.h \
+            dat/include/dat/dat.h \
+            dat/include/dat/dat_error.h \
+            dat/include/dat/dat_platform_specific.h \
+            dat/include/dat/dat_redirection.h \
+            dat/include/dat/dat_registry.h \
+            dat/include/dat/dat_vendor_specific.h \
+            dat/include/dat/udat_config.h \
+            dat/include/dat/udat.h \
+            dat/include/dat/udat_redirection.h \
+            dat/include/dat/udat_vendor_specific.h \
+            dapl/common/dapl_adapter_util.h \
+            dapl/common/dapl_cno_util.h \
+            dapl/common/dapl_cookie.h \
+            dapl/common/dapl_cr_util.h \
+            dapl/common/dapl_ep_util.h \
+            dapl/common/dapl_evd_util.h \
+            dapl/common/dapl_hash.h \
+            dapl/common/dapl_hca_util.h \
+            dapl/common/dapl_ia_util.h \
+            dapl/common/dapl_init.h \
+            dapl/common/dapl_lmr_util.h \
+            dapl/common/dapl_mr_util.h \
+            dapl/common/dapl_name_service.h \
+            dapl/common/dapl_provider.h \
+            dapl/common/dapl_pz_util.h \
+            dapl/common/dapl_ring_buffer_util.h \
+            dapl/common/dapl_rmr_util.h \
+            dapl/common/dapl_sp_util.h \
+            dapl/common/dapl_srq_util.h \
+            dapl/common/dapl_timer_util.h \
+            dapl/udapl/linux/dapl_osd.h \
+            dapl/include/dapl.h \
+            dapl/include/dapl_debug.h \
+            dapl/include/dapl_ipoib_names.h \
+            dapl/include/dapl_vendor.h \
+            dapl/openib_cma/dapl_ib_dto.h \
+            dapl/openib_cma/dapl_ib_util.h \
+            dapl/openib_scm/dapl_ib_dto.h \
+            dapl/openib_scm/dapl_ib_util.h \
+            dat/udat/libdat.map \
+            doc/dat.conf \
+            dapl/udapl/libdaplcma.map \
+            dapl/udapl/libdaplscm.map \
+            libdat.spec.in 
+            
+dist-hook: libdat.spec 
+       cp libdat.spec $(distdir)
diff --git a/autogen.sh b/autogen.sh
new file mode 100755 (executable)
index 0000000..dfa5545
--- /dev/null
@@ -0,0 +1,9 @@
+#! /bin/sh
+
+set -x
+aclocal -I config
+libtoolize --force --copy
+autoheader
+automake --foreign --add-missing --copy
+autoconf
+
diff --git a/configure.in b/configure.in
new file mode 100644 (file)
index 0000000..bf5ec09
--- /dev/null
@@ -0,0 +1,64 @@
+dnl Process this file with autoconf to produce a configure script.
+
+AC_PREREQ(2.57)
+AC_INIT(dapl, 1.2.0, dapl-devel@lists.sourceforge.net)
+AC_CONFIG_SRCDIR([dat/udat/udat.c])
+AC_CONFIG_AUX_DIR(config)
+AM_CONFIG_HEADER(config.h)
+AM_INIT_AUTOMAKE(dapl, 1.2.0)
+
+AM_PROG_LIBTOOL
+
+AC_ARG_ENABLE(libcheck, [  --disable-libcheck      do not test for presence of ib libraries],
+[       if test x$enableval = xno ; then
+                disable_libcheck=yes
+        fi
+])
+
+dnl Checks for programs
+AC_PROG_CC
+
+dnl Checks for libraries
+if test "$disable_libcheck" != "yes"
+then
+AC_CHECK_LIB(ibverbs, ibv_get_device_list, [],
+    AC_MSG_ERROR([ibv_get_device_list() not found.  libdapl requires libibverbs.]))
+fi
+
+dnl Checks for header files.
+if test "$disable_libcheck" != "yes"
+then
+AC_CHECK_HEADER(infiniband/verbs.h, [],
+    AC_MSG_ERROR([<infiniband/verbs.h> not found.  Is libibverbs installed?]))
+fi
+
+AC_CACHE_CHECK(whether ld accepts --version-script, ac_cv_version_script,
+    if test -n "`$LD --help < /dev/null 2>/dev/null | grep version-script`"; then
+        ac_cv_version_script=yes
+    else
+        ac_cv_version_script=no
+    fi)
+AM_CONDITIONAL(HAVE_LD_VERSION_SCRIPT, test "$ac_cv_version_script" = "yes")
+
+dnl Support debug mode build - if enable-debug provided the DEBUG variable is set 
+AC_ARG_ENABLE(debug,
+[  --enable-debug Turn on debug mode],
+[case "${enableval}" in
+  yes) debug=true ;;
+  no)  debug=false ;;
+  *) AC_MSG_ERROR(bad value ${enableval} for --enable-debug) ;;
+esac],[debug=false])
+AM_CONDITIONAL(DEBUG, test x$debug = xtrue)
+
+dnl Check for Redhat EL release 
+AC_CACHE_CHECK(whether this is an RHEL system, ac_cv_rhel,
+    if test -f /etc/redhat-release && 
+       test -n "`grep -v Fedora /etc/redhat-release`"; then
+        ac_cv_rhel=yes
+    else
+        ac_cv_rhel=no
+    fi)
+AM_CONDITIONAL(OS_RHEL, test "$ac_cv_rhel" = "yes")
+
+AC_CONFIG_FILES([Makefile libdat.spec])
+AC_OUTPUT
index d97f0f24853da6489eb48b36ddb4df19a409893f..ffd66beddf62ad6169b0b8bb9fd6c4c46e408b21 100644 (file)
@@ -48,10 +48,4 @@ extern void
 DAT_PROVIDER_FINI_FUNC_NAME (
     IN const DAT_PROVIDER_INFO * );
 
-extern void
-dapl_init ( void ) ;
-
-extern void
-dapl_fini ( void ) ;
-
 #endif
index 90c55227ee07c3b7e6780e84c56640f32a55ed45..a6f3bdb581228784eb6b923e8051925fa5046f12 100644 (file)
@@ -49,7 +49,7 @@
 #ifndef _DAPL_IB_UTIL_H_
 #define _DAPL_IB_UTIL_H_
 
-#include "verbs.h"
+#include <infiniband/verbs.h>
 #include <byteswap.h>
 #include <rdma/rdma_cma.h>
 
index e18361f213e16d419ba67ff728f62d6dfc7a6e61..0d928df93387ca429e037d47cdbf78f9a67f71a5 100644 (file)
@@ -49,7 +49,7 @@
 #ifndef _DAPL_IB_UTIL_H_
 #define _DAPL_IB_UTIL_H_
 
-#include "verbs.h"
+#include <infiniband/verbs.h>
 #include <byteswap.h>
 
 #ifndef __cplusplus
index cfe9ad02d1f9748d4c584d389a0206a8cb2e7410..6fce5cbe22fce705de35e21b673964afdabb9d26 100644 (file)
@@ -66,8 +66,7 @@
  *
  * Return Values:
  */
-void 
-dapl_init ( void )
+static void __attribute__((constructor)) dapl_init ( void )
 {
     DAT_RETURN         dat_status;
 
@@ -118,7 +117,6 @@ dapl_init ( void )
 
 bail:
     dapl_dbg_log (DAPL_DBG_TYPE_ERR, "ERROR: dapl_init failed\n");
-    dapl_fini ();
     return;
 }
 
@@ -140,8 +138,7 @@ bail:
  *
  * Return Values:
  */
-void 
-dapl_fini ( void )
+static void __attribute__((destructor)) dapl_fini ( void )
 {
     DAT_RETURN         dat_status;
 
diff --git a/dapl/udapl/libdaplcma.map b/dapl/udapl/libdaplcma.map
new file mode 100644 (file)
index 0000000..f97dfac
--- /dev/null
@@ -0,0 +1,6 @@
+DAPL_CMA_1.2 {
+        global:
+               dat_provider_fini;
+               dat_provider_init;
+       local: *;
+};
diff --git a/dapl/udapl/libdaplscm.map b/dapl/udapl/libdaplscm.map
new file mode 100644 (file)
index 0000000..21342c7
--- /dev/null
@@ -0,0 +1,6 @@
+DAPL_SCM_1.2 {
+        global:
+               dat_provider_fini;
+               dat_provider_init;
+       local: *;
+};
diff --git a/dat/udat/libdat.map b/dat/udat/libdat.map
new file mode 100644 (file)
index 0000000..89caca3
--- /dev/null
@@ -0,0 +1,77 @@
+DAT_1.2 {
+        global:
+               dat_cno_create;
+               dat_cno_free;
+               dat_cno_modify_agent;
+               dat_cno_query;
+               dat_cno_wait;
+               dat_cr_accept;
+               dat_cr_handoff;
+               dat_cr_query;
+               dat_cr_reject;
+               dat_ep_connect;
+               dat_ep_create;
+               dat_ep_create_with_srq;
+               dat_ep_disconnect;
+               dat_ep_dup_connect;
+               dat_ep_free;
+               dat_ep_get_status;
+               dat_ep_modify;
+               dat_ep_post_rdma_read;
+               dat_ep_post_rdma_write;
+               dat_ep_post_recv;
+               dat_ep_post_send;
+               dat_ep_query;
+               dat_ep_recv_query;
+               dat_ep_reset;
+               dat_ep_set_watermark;
+               dat_evd_clear_unwaitable;
+               dat_evd_create;
+               dat_evd_dequeue;
+               dat_evd_disable;
+               dat_evd_enable;
+               dat_evd_free;
+               dat_evd_modify_cno;
+               dat_evd_post_se;
+               dat_evd_query;
+               dat_evd_resize;
+               dat_evd_set_unwaitable;
+               dat_evd_wait;
+               dat_get_consumer_context;
+               dat_get_handle_type;
+               dat_ia_close;
+               dat_ia_openv;
+               dat_ia_query;
+               dat_lmr_create;
+               dat_lmr_free;
+               dat_lmr_query;
+               dat_lmr_sync_rdma_read;
+               dat_lmr_sync_rdma_write;
+               dat_psp_create;
+               dat_psp_create_any;
+               dat_psp_free;
+               dat_psp_query;
+               dat_pz_create;
+               dat_pz_free;
+               dat_pz_query;
+               dat_registry_add_provider;
+               dat_registry_list_providers;
+               dat_registry_remove_provider;
+               dat_rmr_bind;
+               dat_rmr_create;
+               dat_rmr_free;
+               dat_rmr_query;
+               dat_rsp_create;
+               dat_rsp_free;
+               dat_rsp_query;
+               dat_set_consumer_context;
+               dat_srq_create;
+               dat_srq_free;
+               dat_srq_post_recv;
+               dat_srq_query;
+               dat_srq_resize;
+               dat_srq_set_lw;
+               dats_get_ia_handle;
+               dat_strerror;
+       local: *;
+};
index 6d885f1c17d7d6a76d7a6c441f0455b41ea054fe..21fafc0d989fb76ee0c4a5c3ed5aa235215b8da4 100644 (file)
@@ -8,13 +8,17 @@
 #
 # Example for openib_cma and openib_scm
 #
-# For scm version you specify <ia_params> as actual device name and port
 # For cma version you specify <ia_params> as:
 #       network address, network hostname, or netdev name and 0 for port
 #
-OpenIB-scm1 u1.2 nonthreadsafe default /usr/local/openib_dapl/udapl/Target/libdapl.so mv_dapl.1.2 "mthca0 1" ""
-OpenIB-scm2 u1.2 nonthreadsafe default /usr/local/openib_dapl/udapl/Target/libdapl.so mv_dapl.1.2 "mthca0 2" ""
-OpenIB-cma-ip u1.2 nonthreadsafe default /usr/local/openib_dapl/udapl/Target/libdapl.so mv_dapl.1.2 "192.168.0.22 0" ""
-OpenIB-cma-name u1.2 nonthreadsafe default /usr/local/openib_dapl/udapl/Target/libdapl.so mv_dapl.1.2 "svr1-ib0 0" ""
-OpenIB-cma-netdev u1.2 nonthreadsafe default /usr/local/openib_dapl/udapl/Target/libdapl.so mv_dapl.1.2 "ib0 0" ""
-
+# For scm version you specify <ia_params> as actual device name and port
+#
+# Simple (OpenIB-cma) default with netdev name provided first on list 
+# to enable use of same dat.conf version on all nodes
+#
+OpenIB-cma u1.2 nonthreadsafe default /usr/lib/libdaplcma.so mv_dapl.1.2 "ib0 0" ""
+OpenIB-cma-ip u1.2 nonthreadsafe default /usr/lib/libdaplcma.so mv_dapl.1.2 "192.168.0.22 0" ""
+OpenIB-cma-name u1.2 nonthreadsafe default /usr/lib/libdaplcma.so mv_dapl.1.2 "svr1-ib0 0" ""
+OpenIB-cma-netdev u1.2 nonthreadsafe default /usr/lib/libdaplcma.so mv_dapl.1.2 "ib0 0" ""
+OpenIB-scm1 u1.2 nonthreadsafe default /usr/lib/libdaplscm.so mv_dapl.1.2 "mthca0 1" ""
+OpenIB-scm2 u1.2 nonthreadsafe default /usr/lib/libdaplscm.so mv_dapl.1.2 "mthca0 2" ""
diff --git a/libdat.spec b/libdat.spec
new file mode 100644 (file)
index 0000000..4cb1bdc
--- /dev/null
@@ -0,0 +1,98 @@
+# Copyright (c) 2002-2005, Network Appliance, Inc. All rights reserved.
+#
+# This Software is licensed under one of the following licenses:
+#
+# 1) under the terms of the "Common Public License 1.0" a copy of which is
+#    in the file LICENSE.txt in the root directory. The license is also
+#    available from the Open Source Initiative, see
+#    http://www.opensource.org/licenses/cpl.php.
+#
+# 2) under the terms of the "The BSD License" a copy of which is in the file
+#    LICENSE2.txt in the root directory. The license is also available from
+#    the Open Source Initiative, see
+#    http://www.opensource.org/licenses/bsd-license.php.
+#
+# 3) under the terms of the "GNU General Public License (GPL) Version 2" a 
+#    copy of which is in the file LICENSE3.txt in the root directory. The 
+#    license is also available from the Open Source Initiative, see
+#    http://www.opensource.org/licenses/gpl-license.php.
+#
+# Licensee has the right to choose one of the above licenses.
+#
+# Redistributions of source code must retain the above copyright
+# notice and one of the license notices.
+#
+# Redistributions in binary form must reproduce both the above copyright
+# notice, one of the license notices in the documentation
+# and/or other materials provided with the distribution.
+#
+#
+# uDAT and uDAPL 1.2 Registry RPM SPEC file
+#
+# $Id: $
+
+%define ver      1.2.0
+%define RELEASE 1.2
+%define rel     %{?CUSTOM_RELEASE} %{!?CUSTOM_RELEASE:%RELEASE}
+
+Summary: Userspace DAT and DAPL API.
+Name: dapl
+Version: %ver
+Release: %rel
+License: Dual GPL/BSD/CPL
+Group: System Environment/Libraries
+BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
+Source: http://openib.org/downloads/%{name}-%{version}.tar.gz
+Url: http://openib.org/
+
+%description
+Along with the OpenIB kernel drivers, libdat and libdapl provides a userspace
+RDMA API that supports DAT 1.2 specification
+
+%package devel
+Summary: Development files for the libdat and libdapl libraries
+Group: System Environment/Libraries
+Requires: %{name} = %{version}-%{release} 
+
+%description devel
+Static libraries and header files for the libdat and libdapl library.
+
+%prep
+%setup -q -n %{name}-%{ver}
+
+%build
+%configure
+make
+
+%install
+make DESTDIR=${RPM_BUILD_ROOT} install
+# remove unpackaged files from the buildroot
+rm -f $RPM_BUILD_ROOT%{_libdir}/*.la
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%post -p /sbin/ldconfig
+%postun -p /sbin/ldconfig
+
+%files
+%defattr(-,root,root)
+%{_libdir}/libda*.so.*
+%{_sysconfdir}/dat.conf
+%doc AUTHORS COPYING ChangeLog NEWS README
+
+%files devel
+%defattr(-,root,root,-)
+%{_libdir}/libda*.so
+%{_libdir}/*.a
+%{_includedir}/dat/dat.h
+%{_includedir}/dat/dat_error.h
+%{_includedir}/dat/dat_platform_specific.h
+%{_includedir}/dat/dat_redirection.h
+%{_includedir}/dat/dat_registry.h
+%{_includedir}/dat/dat_vendor_specific.h
+%{_includedir}/dat/udat_config.h
+%{_includedir}/dat/udat.h
+%{_includedir}/dat/udat_redirection.h
+%{_includedir}/dat/udat_vendor_specific.h
+%{_sysconfdir}/dat.conf