Changeset: 5e7a09cf378c for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=5e7a09cf378c
Modified Files:
configure.ag
sql/backends/monet5/vaults/bam/bam_export.c
sql/backends/monet5/vaults/bam/bam_wrapper.c
sql/backends/monet5/vaults/bam/bam_wrapper.h
Branch: DataVaults
Log Message:
Allow the BAM/SAM module to be built with both the samtools/*.h and bam/*.h
configurtions
This allows the module to be built with the default libs installed on most
system (or OS X, at least)
diffs (105 lines):
diff --git a/configure.ag b/configure.ag
--- a/configure.ag
+++ b/configure.ag
@@ -2376,18 +2376,42 @@ if test "x$have_samtools" != xno; then
AC_CHECK_HEADER(samtools/bam.h,
[ why_have_samtools= ],
- [ why_have_samtools="samtools/bam.h header not found" ])
+ [ why_have_samtools="bam.h header not found" ])
+ if test -n "$why_have_samtools"; then
+ AC_CHECK_HEADER(bam/bam.h,
+ [ why_have_samtools= ],
+ [ why_have_samtools="Neither samtools/bam.h or
bam/bam.h header not found" ])
+ fi
+
+ if test -z "$why_have_samtools"; then
+ AC_CHECK_HEADER(samtools/sam.h,
+ [ why_have_samtools= ],
+ [ why_have_samtools="sam.h header not found" ])
+ fi
+ if test -n "$why_have_samtools"; then
+ AC_CHECK_HEADER(bam/sam.h,
+ [ why_have_samtools= ],
+ [ why_have_samtools="Neither samtools/sam.h or
bam/sam.h header not found" ])
+ fi
+
if test -z "$why_have_samtools"; then
AC_CHECK_HEADER(samtools/bgzf.h,
[ why_have_samtools= ],
- [ why_have_samtools="samtools/bgzf.h header not found"
])
+ [ why_have_samtools="bgzf.h header not found" ])
fi
+ if test -n "$why_have_samtools"; then
+ AC_CHECK_HEADER(bam/bgzf.h,
+ [ why_have_samtools= ],
+ [ why_have_samtools="Neither samtool/bgzf.h nor
bam/bgzf.h header not found" ])
+ fi
+
if test -z "$why_have_samtools"; then
AC_CHECK_LIB(bam, bam_header_read,
- AC_DEFINE(HAVE_SAMTOOLS, 1, [Define if you have the
samtools (providing the bam library)]),
+ AC_DEFINE(HAVE_SAMTOOLS, 1, [Define if you have the
samtools version 0.1.x (providing the bam library)]),
[ why_have_samtools="bam library not found" ],
[-lm -lpthread -lz])
fi
+
if test -n "$why_have_samtools"; then
if test "x$have_samtools" != xauto; then
AC_MSG_ERROR([$why_have_samtools])
diff --git a/sql/backends/monet5/vaults/bam/bam_export.c
b/sql/backends/monet5/vaults/bam/bam_export.c
--- a/sql/backends/monet5/vaults/bam/bam_export.c
+++ b/sql/backends/monet5/vaults/bam/bam_export.c
@@ -16,7 +16,11 @@
#include "monetdb_config.h"
+#ifdef HAVE_SAMTOOLS_SAM_H
#include <samtools/bam.h>
+#else
+#include <bam/bam.h>
+#endif
#include "bam_globals.h"
#include "bam_db_interface.h"
diff --git a/sql/backends/monet5/vaults/bam/bam_wrapper.c
b/sql/backends/monet5/vaults/bam/bam_wrapper.c
--- a/sql/backends/monet5/vaults/bam/bam_wrapper.c
+++ b/sql/backends/monet5/vaults/bam/bam_wrapper.c
@@ -15,14 +15,22 @@
#include "stream.h"
#include "bam_globals.h"
+#ifdef HAVE_SAMTOOLS_SAM_H
#include <samtools/sam.h>
+#else
+#include <bam/sam.h>
+#endif
+
#ifdef HAVE_SAMTOOLS_KSTRING_H
#include <samtools/kstring.h>
+#elif HAVE_BAM_KSTRING_H
+#include <bam/kstring.h>
#else
/* Ubuntu doesn't distribute samtools/kstring.h, so we need our own
* version */
#include "mykstring.h"
#endif
+
#include "bam_wrapper.h"
str
diff --git a/sql/backends/monet5/vaults/bam/bam_wrapper.h
b/sql/backends/monet5/vaults/bam/bam_wrapper.h
--- a/sql/backends/monet5/vaults/bam/bam_wrapper.h
+++ b/sql/backends/monet5/vaults/bam/bam_wrapper.h
@@ -18,7 +18,11 @@
#include "gdk.h"
+#ifdef HAVE_SAMTOOLS_SAM_H
#include <samtools/sam.h>
+#else
+#include <bam/sam.h>
+#endif
#define BW_FP_BUF_SIZE 1024
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list