svn commit: r467343 - in head/biology: . tabixpp tabixpp/files
Jason W. Bacon
jwb at FreeBSD.org
Sat Apr 14 23:52:18 UTC 2018
Author: jwb
Date: Sat Apr 14 23:52:16 2018
New Revision: 467343
URL: https://svnweb.freebsd.org/changeset/ports/467343
Log:
biology/tabixpp: C++ wrapper to tabix indexer
Reviewed by: mat
Approved by: jrm (mentor)
Differential Revision: https://reviews.freebsd.org/D14977
Added:
head/biology/tabixpp/
head/biology/tabixpp/Makefile (contents, props changed)
head/biology/tabixpp/distinfo (contents, props changed)
head/biology/tabixpp/files/
head/biology/tabixpp/files/Makefile (contents, props changed)
head/biology/tabixpp/pkg-descr (contents, props changed)
Modified:
head/biology/Makefile
Modified: head/biology/Makefile
==============================================================================
--- head/biology/Makefile Sat Apr 14 22:17:53 2018 (r467342)
+++ head/biology/Makefile Sat Apr 14 23:52:16 2018 (r467343)
@@ -115,6 +115,7 @@
SUBDIR += stacks
SUBDIR += tRNAscan-SE
SUBDIR += t_coffee
+ SUBDIR += tabixpp
SUBDIR += tinker
SUBDIR += treepuzzle
SUBDIR += trimadap
Added: head/biology/tabixpp/Makefile
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/biology/tabixpp/Makefile Sat Apr 14 23:52:16 2018 (r467343)
@@ -0,0 +1,36 @@
+# $FreeBSD$
+
+PORTNAME= tabixpp
+DISTVERSIONPREFIX= v
+DISTVERSION= 1.0.0-10
+DISTVERSIONSUFFIX= -g6bbe690
+CATEGORIES= biology
+
+MAINTAINER= jwb at FreeBSD.org
+COMMENT= C++ wrapper to tabix indexer
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+LIB_DEPENDS= libhts.so:biology/htslib
+
+USES= localbase:ldflags
+USE_LDCONFIG= yes
+USE_GITHUB= yes
+GH_ACCOUNT= ekg
+
+# Disable bundled htslib
+MAKE_ENV= HTS_HEADERS='' HTS_LIB=''
+MAKEFILE= ${FILESDIR}/Makefile
+INSTALL_TARGET= install-strip
+PLIST_FILES= bin/tabix++ \
+ include/tabix.hpp \
+ lib/libtabix.a \
+ lib/libtabix.so \
+ lib/libtabix.so.1
+
+post-install:
+ ${RLN} ${STAGEDIR}${PREFIX}/lib/libtabix.so.1 \
+ ${STAGEDIR}${PREFIX}/lib/libtabix.so
+
+.include <bsd.port.mk>
Added: head/biology/tabixpp/distinfo
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/biology/tabixpp/distinfo Sat Apr 14 23:52:16 2018 (r467343)
@@ -0,0 +1,3 @@
+TIMESTAMP = 1522943679
+SHA256 (ekg-tabixpp-v1.0.0-10-g6bbe690_GH0.tar.gz) = 3a83517f77da15bfd48e6fbaa860560e0f1927254c9f1c332759fe086f65154a
+SIZE (ekg-tabixpp-v1.0.0-10-g6bbe690_GH0.tar.gz) = 3694
Added: head/biology/tabixpp/files/Makefile
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/biology/tabixpp/files/Makefile Sat Apr 14 23:52:16 2018 (r467343)
@@ -0,0 +1,86 @@
+
+# Use ?= to allow overriding from the env or command-line, e.g.
+#
+# make CXXFLAGS="-O3 -fPIC" install
+#
+# Package managers will override many of these variables automatically, so
+# this is aimed at making it easy to create packages (Debian packages,
+# FreeBSD ports, MacPorts, pkgsrc, etc.)
+
+CC ?= cc
+CXX ?= c++
+CXXFLAGS ?= -g -Wall -O2 #-m64 #-arch ppc
+CXXFLAGS += -fPIC
+INCLUDES ?= -Ihtslib
+HTS_HEADERS ?= htslib/htslib/bgzf.h htslib/htslib/tbx.h
+HTS_LIB ?= htslib/libhts.a
+LDFLAGS ?= -Lhtslib
+LDFLAGS += -L.
+
+DESTDIR ?= stage
+PREFIX ?= /usr/local
+STRIP ?= strip
+INSTALL ?= install -c
+MKDIR ?= mkdir -p
+AR ?= ar
+
+DFLAGS = -D_FILE_OFFSET_BITS=64 -D_USE_KNETFILE
+BIN = tabix++
+LIB = libtabix.a
+SOVERSION = 1
+SLIB = libtabix.so.$(SOVERSION)
+OBJS = tabix.o
+SUBDIRS = .
+
+.SUFFIXES:.c .o
+
+.c.o:
+ $(CC) -c $(CXXFLAGS) $(DFLAGS) $(INCLUDES) $< -o $@
+
+all-recur lib-recur clean-recur cleanlocal-recur install-recur:
+ @target=`echo $@ | sed s/-recur//`; \
+ wdir=`pwd`; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ cd $$subdir; \
+ $(MAKE) CC="$(CC)" DFLAGS="$(DFLAGS)" CXXFLAGS="$(CXXFLAGS)" \
+ INCLUDES="$(INCLUDES)" LDFLAGS="$(LDFLAGS)" $$target \
+ || exit 1; \
+ cd $$wdir; \
+ done;
+
+all: $(BIN) $(LIB) $(SLIB)
+
+tabix.o: $(HTS_HEADERS) tabix.cpp tabix.hpp
+ $(CXX) $(CXXFLAGS) -c tabix.cpp $(INCLUDES)
+
+htslib/libhts.a:
+ cd htslib && $(MAKE) lib-static
+
+$(LIB): $(OBJS)
+ $(AR) rs $(LIB) $(OBJS)
+
+$(SLIB): $(OBJS)
+ $(CXX) -shared -Wl,-soname,$(SLIB) -o $(SLIB) $(OBJS)
+
+tabix++: $(OBJS) main.cpp $(HTS_LIB)
+ $(CXX) $(CXXFLAGS) -o $@ main.cpp $(OBJS) $(INCLUDES) $(LDFLAGS) \
+ -lhts -lpthread -lm -lz
+
+install: all
+ $(MKDIR) $(DESTDIR)$(PREFIX)/bin
+ $(MKDIR) $(DESTDIR)$(PREFIX)/include
+ $(MKDIR) $(DESTDIR)$(PREFIX)/lib
+ $(INSTALL) $(BIN) $(DESTDIR)$(PREFIX)/bin
+ $(INSTALL) *.hpp $(DESTDIR)$(PREFIX)/include
+ $(INSTALL) $(LIB) $(SLIB) $(DESTDIR)$(PREFIX)/lib
+
+install-strip: install
+ $(STRIP) $(DESTDIR)$(PREFIX)/bin/$(BIN) $(DESTDIR)$(PREFIX)/lib/$(SLIB)
+
+cleanlocal:
+ rm -rf $(BIN) $(LIB) $(SLIB) $(OBJS) $(DESTDIR)
+ rm -fr gmon.out *.o a.out *.dSYM $(BIN) *~ *.a tabix.aux tabix.log \
+ tabix.pdf *.class libtabix.*.dylib
+ cd htslib && $(MAKE) clean
+
+clean: cleanlocal-recur
Added: head/biology/tabixpp/pkg-descr
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/biology/tabixpp/pkg-descr Sat Apr 14 23:52:16 2018 (r467343)
@@ -0,0 +1,5 @@
+This is a C++ wrapper around tabix project which abstracts some of the details
+of opening and jumping in tabix-indexed files. Tabix is a generic indexer for
+TAB-delimited genome position files.
+
+WWW: https://github.com/ekg/tabixpp
More information about the svn-ports-all
mailing list