Skip to content

Loading…

tmap 3.2.0 #15425

Closed
wants to merge 1 commit into from

4 participants

@2bits
  • Upgrade to version 3.2.0
  • Use git and a tag for stable so that we pick up the submodule.
  • Add options for 32-bit, Alignment, Google Perf Tools, and NoColor
  • Add deps on 'automake' and 'libtool' to generate 'configure'
  • Add a conditional dep on google-perftools if optioned.
  • Add env :std and fails_with :clang otherwise missing symbols.
@2bits

@jacknagel is this submodule issue is on my end or does HB have any control over it?

This formula builds tmap-3.2.0 which includes a git submodule called samtools at a specific commit. When I try to build this, it pulls samtools all right, but I don't think it pulls the right commit.

Here is the tmap code repo showing samtools submodule
Here is what I get when I try to build it

Thanks.

@adamv

We need to kick upstreams to provide real tarballs; git-flow has submodule issues too.

@jacknagel

It looks like it is checking out the correct submodule commit to me.

@jacknagel

i.e. it matches the submodule commit in the superproject at the 3.2.0 tag: https://github.com/iontorrent/TMAP/tree/tmap.3.2.0/src

@2bits

Ok thanks. I tried to use git log in the samtools directory to have it tell me what commit it was at, but all I got was the log for the superproject, and I didn't see the commit listed in the verbose output. Is there an easy way I can check what commit it's checking out when I run into this in the future?

@jacknagel

git submodule status (run from the root of the superproject) should list the checked out commits of all submodules.

In the cache, it is slightly complicated by the fact that submodules are not even cloned until the first installation attempt, so a naive brew fetch tmap will only clone the superproject (very recent git versions can recursive into submodules during a fetch operation, but git-clone can't and we don't require the most up-to-date git anyway).

@2bits

I sent a bug report upstream: iontorrent/TMAP#3 about the missing symbols I get atm.

@nh13

Thanks for taking the time to update the Formula. I am seeing a similar error. When go to ~Library/Caches/Homebrew/tmap--git after the failed install, and run the same system commands (autogen.sh, configure, make) it works fine, so somehow transferring from the checkout directory to the build directory is not working. This affects sources from the submodule.

https://gist.github.com/3908018

@nh13

More debugging, working with gcc/g++ it works, but with cc/c++ it fails, hmmn.

@2bits

@nh13 thanks for stopping bye and mentioning that. @jacknagel Why would this build successfully inside the cache but not when it's cloned into the buildpath? I even set GIT_DIR during testing as one of the first things just in case.

@2bits

I got it to work using std env and llvm. I have no idea why that didn't work before when I tried it, but I must have forgotten to do it. I might not even need the patch. Will test some more later tonight.

@adamv

Patch at least needs a comment

@2bits 2bits tmap 3.2.0
- Upgrade to version 3.2.0
- Use git and a tag for stable so that we pick up the submodule.
- Add options for 32-bit, Alignment, Google Perf Tools, and NoColor
- Add deps on 'automake' and 'libtool' to generate 'configure'
- Add a conditional dep on google-perftools if optioned.
- Add `env :std` and `fails_with :clang` otherwise missing symbols.
dad8678
@2bits

Rebased and patch removed. It wasn't needed (to stop an issue I thought might be caused by -msse3).

@adamv adamv added a commit that closed this pull request
@2bits 2bits tmap 3.2.0
- Upgrade to version 3.2.0
- Use git and a tag for stable so that we pick up the submodule.
- Add options for 32-bit, Alignment, Google Perf Tools, and NoColor
- Add deps on 'automake' and 'libtool' to generate 'configure'
- Add a conditional dep on google-perftools if optioned.
- Add `env :std` and `fails_with :clang` otherwise missing symbols.

Closes #15425.

Signed-off-by: Adam Vandenberg <flangy@gmail.com>
dd3b6ac
@adamv adamv closed this in dd3b6ac
@theirix theirix referenced this pull request
Commit has since been removed from the repository and is no longer available.
@sessyargc sessyargc referenced this pull request
Commit has since been removed from the repository and is no longer available.
@snakeyroc3 snakeyroc3 pushed a commit to snakeyroc3/homebrew that referenced this pull request
@2bits 2bits tmap 3.2.0
- Upgrade to version 3.2.0
- Use git and a tag for stable so that we pick up the submodule.
- Add options for 32-bit, Alignment, Google Perf Tools, and NoColor
- Add deps on 'automake' and 'libtool' to generate 'configure'
- Add a conditional dep on google-perftools if optioned.
- Add `env :std` and `fails_with :clang` otherwise missing symbols.

Closes #15425.

Signed-off-by: Adam Vandenberg <flangy@gmail.com>
8e40161
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Commits on Oct 28, 2012
  1. @2bits

    tmap 3.2.0

    2bits committed
    - Upgrade to version 3.2.0
    - Use git and a tag for stable so that we pick up the submodule.
    - Add options for 32-bit, Alignment, Google Perf Tools, and NoColor
    - Add deps on 'automake' and 'libtool' to generate 'configure'
    - Add a conditional dep on google-perftools if optioned.
    - Add `env :std` and `fails_with :clang` otherwise missing symbols.
This page is out of date. Refresh to see the latest.
Showing with 29 additions and 7 deletions.
  1. +29 −7 Library/Formula/tmap.rb
View
36 Library/Formula/tmap.rb
@@ -2,20 +2,42 @@
class Tmap < Formula
homepage 'http://github.com/iontorrent/TMAP'
- url 'http://github.com/iontorrent/TMAP/tarball/tmap.0.3.7'
- sha1 '8cb8c6d9ebaeb3486a74a402a07a08c778964682'
- version '0.3.7'
+ url 'https://github.com/iontorrent/TMAP.git', :tag => 'tmap.3.2.0'
+ sha1 'da3eb4ce3428cec1f5ac12467af4802df6188711'
+ version '3.2.0'
head 'https://github.com/iontorrent/TMAP.git'
+ env :std
+
+ option '32-bit'
+ option 'indels', 'Enable adjacent insertion and deletions in the alignment'
+ option 'perf', 'Enable google performance tools for profiling and heap checking'
+ option 'nocolor', 'Disable terminal coloring'
+
+ depends_on :automake
+ depends_on :libtool
+ depends_on 'google-perftools' if build.include? 'perf'
+
fails_with :clang do
- build 318
+ build 421
+ cause 'Missing symbols being discussed in iontorrent/TMAP#3'
end
def install
- system "sh autogen.sh"
- system "./configure", "--disable-debug", "--disable-dependency-tracking",
- "--prefix=#{prefix}"
+ system 'sh', 'autogen.sh'
+ args = %W[
+ --disable-dependency-tracking
+ --prefix=#{prefix}
+ ]
+ args << '--enable-32bit-support' if build.include? '32-bit' or not MacOS.prefer_64_bit?
+ args << '--enable-perftools' if build.include? 'perf'
+ args << '--disable-coloring' if build.include? 'nocolor'
+ args << '--enable-adjacent-indels' if build.include? 'indels'
+
+ system "./configure", *args
+ ENV.j1
+ system 'make'
system "make install"
end
Something went wrong with that request. Please try again.