[med-svn] [Git][med-team/ngs-sdk][upstream] New upstream version 2.10.0

Olivier Sallou gitlab at salsa.debian.org
Wed Sep 11 08:30:50 BST 2019



Olivier Sallou pushed to branch upstream at Debian Med / ngs-sdk


Commits:
8b6afd35 by Olivier Sallou at 2019-09-11T07:27:23Z
New upstream version 2.10.0
- - - - -


12 changed files:

- CHANGES.md
- README.md
- ngs-bam/Makefile.vers
- ngs-bam/setup/konfigure.perl
- ngs-java/Makefile.vers
- ngs-java/gov/nih/nlm/ncbi/ngs/LibDependencies.java
- ngs-java/setup/konfigure.perl
- ngs-python/Makefile.vers
- ngs-python/setup/konfigure.perl
- ngs-sdk/Makefile.vers
- ngs-sdk/dispatch/version.h
- ngs-sdk/setup/konfigure.perl


Changes:

=====================================
CHANGES.md
=====================================
@@ -1,6 +1,18 @@
 # NCBI External Developer Release:
 
 
+## NGS SDK 2.10.0
+**August 19, 2019**
+
+  **ngs**: updated for _ncbi-vdb 2.10.0_
+
+
+## NGS SDK 2.9.6
+**March 18, 2019**
+
+  **ngs**: changed version to match that of _ncbi-vdb_
+
+
 ## NGS SDK 2.9.4
 **January 31, 2019**
 


=====================================
README.md
=====================================
@@ -7,19 +7,6 @@ NGS is a new, domain-specific API for accessing reads, alignments and pileups pr
 
 The API is currently expressed in C++, Java and Python languages. The design makes it possible to maintain a high degree of similarity between the code in one language and code in another - especially between C++ and Java.
 
-### IMPORTANT ANNOUNCEMENT
-As was announced in [OMB memorandum M-15-13](https://www.whitehouse.gov/sites/default/files/omb/memoranda/2015/m-15-13.pdf) on June 8, 2015, NCBI and all Federal systems will be transitioning to using HTTPS-only protocols before the end of 2016. This change will affect any software that uses NCBI APIs such as the E-utilities or NCBI software toolkits such as `sra-tools`, `ncbi-vdb` or `ngs`.
-
-The NLM and NCBI may implement the switch to HTTPS-only as early as September 30, 2016.
-
-In particular, software products that depend on `sra-tools`, `ncbi-vdb` or `ngs` may not function as expected after September 30 unless they are properly updated from this site or by the software provider.
-
-If you use software that accesses NCBI SRA data in any way, your software will likely be affected by this change. Please check with your software provider for recent udpates or patches, and be sure to acquire these before September 30.
- 
-If you develop software that relies on `sra-tools`, `ncbi-vdb` or `ngs` in any way, you will likely need to update your code so that it accesses NCBI using HTTPS.
-
-We have released new tools with version 1.3.0 that are HTTPS compatible and `M-15-13` compliant as of October 7, 2016. Please be certain to [update all of your binaries](https://github.com/ncbi/sra-tools/wiki/Downloads) and configuration files.
-
 # Documentation
 
 Further documentation is available on the [wiki](https://github.com/ncbi/ngs/wiki).


=====================================
ngs-bam/Makefile.vers
=====================================
@@ -23,4 +23,4 @@
 # ===========================================================================
 
 # NGS-BAM and library version
-VERSION = 2.9.4
+VERSION = 2.10.0


=====================================
ngs-bam/setup/konfigure.perl
=====================================
@@ -211,6 +211,12 @@ my $OS_DISTRIBUTOR = '';
 if ($OS eq 'linux') {
     print "checking OS distributor... " unless ($AUTORUN);
     $OS_DISTRIBUTOR = `lsb_release -si 2> /dev/null`;
+    if ( $? != 0 ) {
+        $_ = `cat /etc/redhat-release 2> /dev/null`;
+        @_ = split ( / /  );
+        $OS_DISTRIBUTOR = $_[0] if ( $_[0] );
+    }
+    $OS_DISTRIBUTOR = '' unless ( $OS_DISTRIBUTOR );
     chomp $OS_DISTRIBUTOR;
     println $OS_DISTRIBUTOR unless ($AUTORUN);
 }
@@ -371,7 +377,7 @@ if ($TOOLS =~ /gcc$/) {
 } elsif ($TOOLS eq 'clang') {
     $CPP  = 'clang++' unless ($CPP);
     $CC   = 'clang -c';
-    my $versionMin = '-mmacosx-version-min=10.6';
+    my $versionMin = '-mmacosx-version-min=10.10';
     $CP   = "$CPP -c $versionMin";
     if ($BITS ne '32_64') {
         $ARCH_FL = '-arch i386' if ($BITS == 32);
@@ -448,6 +454,15 @@ if ( $PKG{REQ} ) {
 
 my @dependencies;
 
+if ( $PKG{OPT} ) {
+    foreach ( @{ $PKG{OPT} } ) {
+        if ( /^qmake$/ ) {
+            my $qmake = check_qmake();
+            push @dependencies, "QMAKE_BIN = $qmake";
+        } else { die; }
+    }
+}
+
 my %DEPEND_OPTIONS;
 foreach my $href (DEPENDS()) {
     $_ = $href->{name};
@@ -555,10 +570,12 @@ foreach my $href (@REQ) {
                     $found_src  = $fs  if (! $found_src  && $fs);
                 } elsif (! ($try =~ /$a{name}$/)) {
                     $try = File::Spec->catdir($try, $a{name});
-                    ($fi, $fl, $fil) = find_in_dir($try, $i, $l, $il);
+                    ($fi, $fl, $fil, $fs)
+                        = find_in_dir($try, $i, $l, $il, undef, undef, $src);
                     $found_itf  = $fi  if (! $found_itf  && $fi);
                     $found_lib  = $fl  if (! $found_lib  && $fl);
                     $found_ilib = $fil if (! $found_ilib && $fil);
+                    $found_src  = $fs  if (! $found_src  && $fs);
                 }
             } elsif ($need_bin) {
                 my (undef, $fl, $fil)
@@ -1461,6 +1478,86 @@ sub check_tool {
     }
 }
 
+sub check_qmake {
+    print "checking for QMake... ";
+
+    my $tool = 'qmake';
+    print "\n\t\trunning $tool... " if ($OPT{'debug'});
+    my $out = `$tool -v 2>&1`;
+    if ($? == 0) {
+        my $out = `( $tool -v | grep QMake ) 2>&1`;
+        if ($? == 0) {
+            print "$out " if ($OPT{'debug'});
+            println $tool;
+            return $tool;
+        }
+
+        println "wrong qmake" if ($OPT{'debug'});
+
+        print "\t\tchecking $ENV{PATH}...\n" if ($OPT{'debug'});
+        foreach ( split(/:/, $ENV{PATH})) {
+            my $cmd = "$_/$tool";
+            print "\t\trunning $cmd... " if ($OPT{'debug'});
+            my $out = `( $cmd -v | grep QMake ) 2>&1`;
+            if ($? == 0) {
+                print "$out " if ($OPT{'debug'});
+                if ( $out =~ /QMake/ ) {
+                    println $cmd;
+                    return $cmd;
+                }
+            }
+
+            println "no" if ($OPT{'debug'});
+        }
+    }
+
+    if ( $OS eq 'linux' ) {
+        if ( $OS_DISTRIBUTOR eq 'CentOS' ) {
+            foreach ( glob ( "$ENV{HOME}/Qt/*/gcc_64" ) ) {
+                $tool =  "$_/bin/qmake";
+                print "\n\t\tchecking $tool... " if ($OPT{'debug'});
+                my $out = `( $tool -v | grep QMake ) 2>&1`;
+                if ($? == 0) {
+                    print "$out " if ($OPT{'debug'});
+                    println $tool;
+                    return $tool;
+                }
+            }
+
+            $tool = '/usr/lib64/qt5/bin/qmake';
+
+        } elsif ( $OS_DISTRIBUTOR eq 'Ubuntu' ) {
+            foreach ( glob ( "$ENV{HOME}/Qt*/*/gcc_64" ) ) {
+                $tool =  "$_/bin/qmake";
+                print "\n\t\tchecking $tool... " if ($OPT{'debug'});
+                my $out = `( $tool -v | grep QMake ) 2>&1`;
+                if ($? == 0) {
+                    print "$out " if ($OPT{'debug'});
+                    println $tool;
+                    return $tool;
+                }
+            }
+
+            $tool = '';
+        }
+    } elsif ( $OS eq 'mac' ) {
+        $tool = '/Applications/QT/5.10.1/clang_64/bin/qmake';
+    }
+
+    if ( $tool ) {
+        print "\n\t\tchecking $tool... " if ($OPT{'debug'});
+        my $out = `( $tool -v | grep QMake ) 2>&1`;
+        if ($? == 0) {
+            print "$out " if ($OPT{'debug'});
+            println $tool;
+            return $tool;
+        }
+    }
+
+    println "no";
+    return '';
+}
+
 sub check_static_libstdcpp {
     my $option = '-static-libstdc++';
 
@@ -1522,7 +1619,7 @@ sub check_compiler {
             $flags = $n;
             $log = '                      int main() {                     }\n'
         } elsif ($n eq 'hdf5') {
-            $library = '-lhdf5';
+            $library = '-Wl,-Bstatic -lhdf5 -Wl,-Bdynamic -ldl -lm -lz';
             $log = '#include <hdf5.h>  \n int main() { H5close         (); }\n'
         } elsif ($n eq 'fuse') {
             $flags = '-D_FILE_OFFSET_BITS=64';
@@ -1565,7 +1662,14 @@ sub check_compiler {
         push ( @l, '' ) unless ( @l );
         for my $i ( 0 .. $#l ) {
             my $l = $l [ $i ];
-            next if ( $l && ! -d $l );
+            if ( $l && ! -d $l ) {
+                if ( $i == $#l ) {
+                    println 'no';
+                    return;
+                } else {
+                    next;
+                }
+            }
             my $gcc = "| $tool -xc $flags " . ($I ? "-I$I " : ' ')
                                       . ($l ? "-L$l " : ' ') . "- $library";
             $gcc .= ' 2> /dev/null' unless ($OPT{'debug'});


=====================================
ngs-java/Makefile.vers
=====================================
@@ -23,4 +23,4 @@
 # ===========================================================================
 
 # NGS-JAVA and library version
-VERSION = 2.9.4
+VERSION = 2.10.0


=====================================
ngs-java/gov/nih/nlm/ncbi/ngs/LibDependencies.java
=====================================
@@ -29,6 +29,6 @@ package gov.nih.nlm.ncbi.ngs;
 class LibDependencies {
     final static String NGS_SDK  = "ngs-sdk";
     final static String NCBI_VDB = "ncbi-vdb";
-    final static String NGS_SDK_VERSION = "2.9.4";
-    final static String NCBI_VDB_VERSION = "2.9.4";
+    final static String NGS_SDK_VERSION = "2.10.0";
+    final static String NCBI_VDB_VERSION = "2.10.0";
 }


=====================================
ngs-java/setup/konfigure.perl
=====================================
@@ -211,6 +211,12 @@ my $OS_DISTRIBUTOR = '';
 if ($OS eq 'linux') {
     print "checking OS distributor... " unless ($AUTORUN);
     $OS_DISTRIBUTOR = `lsb_release -si 2> /dev/null`;
+    if ( $? != 0 ) {
+        $_ = `cat /etc/redhat-release 2> /dev/null`;
+        @_ = split ( / /  );
+        $OS_DISTRIBUTOR = $_[0] if ( $_[0] );
+    }
+    $OS_DISTRIBUTOR = '' unless ( $OS_DISTRIBUTOR );
     chomp $OS_DISTRIBUTOR;
     println $OS_DISTRIBUTOR unless ($AUTORUN);
 }
@@ -371,7 +377,7 @@ if ($TOOLS =~ /gcc$/) {
 } elsif ($TOOLS eq 'clang') {
     $CPP  = 'clang++' unless ($CPP);
     $CC   = 'clang -c';
-    my $versionMin = '-mmacosx-version-min=10.6';
+    my $versionMin = '-mmacosx-version-min=10.10';
     $CP   = "$CPP -c $versionMin";
     if ($BITS ne '32_64') {
         $ARCH_FL = '-arch i386' if ($BITS == 32);
@@ -448,6 +454,15 @@ if ( $PKG{REQ} ) {
 
 my @dependencies;
 
+if ( $PKG{OPT} ) {
+    foreach ( @{ $PKG{OPT} } ) {
+        if ( /^qmake$/ ) {
+            my $qmake = check_qmake();
+            push @dependencies, "QMAKE_BIN = $qmake";
+        } else { die; }
+    }
+}
+
 my %DEPEND_OPTIONS;
 foreach my $href (DEPENDS()) {
     $_ = $href->{name};
@@ -555,10 +570,12 @@ foreach my $href (@REQ) {
                     $found_src  = $fs  if (! $found_src  && $fs);
                 } elsif (! ($try =~ /$a{name}$/)) {
                     $try = File::Spec->catdir($try, $a{name});
-                    ($fi, $fl, $fil) = find_in_dir($try, $i, $l, $il);
+                    ($fi, $fl, $fil, $fs)
+                        = find_in_dir($try, $i, $l, $il, undef, undef, $src);
                     $found_itf  = $fi  if (! $found_itf  && $fi);
                     $found_lib  = $fl  if (! $found_lib  && $fl);
                     $found_ilib = $fil if (! $found_ilib && $fil);
+                    $found_src  = $fs  if (! $found_src  && $fs);
                 }
             } elsif ($need_bin) {
                 my (undef, $fl, $fil)
@@ -1461,6 +1478,86 @@ sub check_tool {
     }
 }
 
+sub check_qmake {
+    print "checking for QMake... ";
+
+    my $tool = 'qmake';
+    print "\n\t\trunning $tool... " if ($OPT{'debug'});
+    my $out = `$tool -v 2>&1`;
+    if ($? == 0) {
+        my $out = `( $tool -v | grep QMake ) 2>&1`;
+        if ($? == 0) {
+            print "$out " if ($OPT{'debug'});
+            println $tool;
+            return $tool;
+        }
+
+        println "wrong qmake" if ($OPT{'debug'});
+
+        print "\t\tchecking $ENV{PATH}...\n" if ($OPT{'debug'});
+        foreach ( split(/:/, $ENV{PATH})) {
+            my $cmd = "$_/$tool";
+            print "\t\trunning $cmd... " if ($OPT{'debug'});
+            my $out = `( $cmd -v | grep QMake ) 2>&1`;
+            if ($? == 0) {
+                print "$out " if ($OPT{'debug'});
+                if ( $out =~ /QMake/ ) {
+                    println $cmd;
+                    return $cmd;
+                }
+            }
+
+            println "no" if ($OPT{'debug'});
+        }
+    }
+
+    if ( $OS eq 'linux' ) {
+        if ( $OS_DISTRIBUTOR eq 'CentOS' ) {
+            foreach ( glob ( "$ENV{HOME}/Qt/*/gcc_64" ) ) {
+                $tool =  "$_/bin/qmake";
+                print "\n\t\tchecking $tool... " if ($OPT{'debug'});
+                my $out = `( $tool -v | grep QMake ) 2>&1`;
+                if ($? == 0) {
+                    print "$out " if ($OPT{'debug'});
+                    println $tool;
+                    return $tool;
+                }
+            }
+
+            $tool = '/usr/lib64/qt5/bin/qmake';
+
+        } elsif ( $OS_DISTRIBUTOR eq 'Ubuntu' ) {
+            foreach ( glob ( "$ENV{HOME}/Qt*/*/gcc_64" ) ) {
+                $tool =  "$_/bin/qmake";
+                print "\n\t\tchecking $tool... " if ($OPT{'debug'});
+                my $out = `( $tool -v | grep QMake ) 2>&1`;
+                if ($? == 0) {
+                    print "$out " if ($OPT{'debug'});
+                    println $tool;
+                    return $tool;
+                }
+            }
+
+            $tool = '';
+        }
+    } elsif ( $OS eq 'mac' ) {
+        $tool = '/Applications/QT/5.10.1/clang_64/bin/qmake';
+    }
+
+    if ( $tool ) {
+        print "\n\t\tchecking $tool... " if ($OPT{'debug'});
+        my $out = `( $tool -v | grep QMake ) 2>&1`;
+        if ($? == 0) {
+            print "$out " if ($OPT{'debug'});
+            println $tool;
+            return $tool;
+        }
+    }
+
+    println "no";
+    return '';
+}
+
 sub check_static_libstdcpp {
     my $option = '-static-libstdc++';
 
@@ -1522,7 +1619,7 @@ sub check_compiler {
             $flags = $n;
             $log = '                      int main() {                     }\n'
         } elsif ($n eq 'hdf5') {
-            $library = '-lhdf5';
+            $library = '-Wl,-Bstatic -lhdf5 -Wl,-Bdynamic -ldl -lm -lz';
             $log = '#include <hdf5.h>  \n int main() { H5close         (); }\n'
         } elsif ($n eq 'fuse') {
             $flags = '-D_FILE_OFFSET_BITS=64';
@@ -1565,7 +1662,14 @@ sub check_compiler {
         push ( @l, '' ) unless ( @l );
         for my $i ( 0 .. $#l ) {
             my $l = $l [ $i ];
-            next if ( $l && ! -d $l );
+            if ( $l && ! -d $l ) {
+                if ( $i == $#l ) {
+                    println 'no';
+                    return;
+                } else {
+                    next;
+                }
+            }
             my $gcc = "| $tool -xc $flags " . ($I ? "-I$I " : ' ')
                                       . ($l ? "-L$l " : ' ') . "- $library";
             $gcc .= ' 2> /dev/null' unless ($OPT{'debug'});


=====================================
ngs-python/Makefile.vers
=====================================
@@ -23,4 +23,4 @@
 # ===========================================================================
 
 # NGS-PYTHON and library version
-VERSION = 2.9.4
+VERSION = 2.10.0


=====================================
ngs-python/setup/konfigure.perl
=====================================
@@ -211,6 +211,12 @@ my $OS_DISTRIBUTOR = '';
 if ($OS eq 'linux') {
     print "checking OS distributor... " unless ($AUTORUN);
     $OS_DISTRIBUTOR = `lsb_release -si 2> /dev/null`;
+    if ( $? != 0 ) {
+        $_ = `cat /etc/redhat-release 2> /dev/null`;
+        @_ = split ( / /  );
+        $OS_DISTRIBUTOR = $_[0] if ( $_[0] );
+    }
+    $OS_DISTRIBUTOR = '' unless ( $OS_DISTRIBUTOR );
     chomp $OS_DISTRIBUTOR;
     println $OS_DISTRIBUTOR unless ($AUTORUN);
 }
@@ -371,7 +377,7 @@ if ($TOOLS =~ /gcc$/) {
 } elsif ($TOOLS eq 'clang') {
     $CPP  = 'clang++' unless ($CPP);
     $CC   = 'clang -c';
-    my $versionMin = '-mmacosx-version-min=10.6';
+    my $versionMin = '-mmacosx-version-min=10.10';
     $CP   = "$CPP -c $versionMin";
     if ($BITS ne '32_64') {
         $ARCH_FL = '-arch i386' if ($BITS == 32);
@@ -448,6 +454,15 @@ if ( $PKG{REQ} ) {
 
 my @dependencies;
 
+if ( $PKG{OPT} ) {
+    foreach ( @{ $PKG{OPT} } ) {
+        if ( /^qmake$/ ) {
+            my $qmake = check_qmake();
+            push @dependencies, "QMAKE_BIN = $qmake";
+        } else { die; }
+    }
+}
+
 my %DEPEND_OPTIONS;
 foreach my $href (DEPENDS()) {
     $_ = $href->{name};
@@ -555,10 +570,12 @@ foreach my $href (@REQ) {
                     $found_src  = $fs  if (! $found_src  && $fs);
                 } elsif (! ($try =~ /$a{name}$/)) {
                     $try = File::Spec->catdir($try, $a{name});
-                    ($fi, $fl, $fil) = find_in_dir($try, $i, $l, $il);
+                    ($fi, $fl, $fil, $fs)
+                        = find_in_dir($try, $i, $l, $il, undef, undef, $src);
                     $found_itf  = $fi  if (! $found_itf  && $fi);
                     $found_lib  = $fl  if (! $found_lib  && $fl);
                     $found_ilib = $fil if (! $found_ilib && $fil);
+                    $found_src  = $fs  if (! $found_src  && $fs);
                 }
             } elsif ($need_bin) {
                 my (undef, $fl, $fil)
@@ -1461,6 +1478,86 @@ sub check_tool {
     }
 }
 
+sub check_qmake {
+    print "checking for QMake... ";
+
+    my $tool = 'qmake';
+    print "\n\t\trunning $tool... " if ($OPT{'debug'});
+    my $out = `$tool -v 2>&1`;
+    if ($? == 0) {
+        my $out = `( $tool -v | grep QMake ) 2>&1`;
+        if ($? == 0) {
+            print "$out " if ($OPT{'debug'});
+            println $tool;
+            return $tool;
+        }
+
+        println "wrong qmake" if ($OPT{'debug'});
+
+        print "\t\tchecking $ENV{PATH}...\n" if ($OPT{'debug'});
+        foreach ( split(/:/, $ENV{PATH})) {
+            my $cmd = "$_/$tool";
+            print "\t\trunning $cmd... " if ($OPT{'debug'});
+            my $out = `( $cmd -v | grep QMake ) 2>&1`;
+            if ($? == 0) {
+                print "$out " if ($OPT{'debug'});
+                if ( $out =~ /QMake/ ) {
+                    println $cmd;
+                    return $cmd;
+                }
+            }
+
+            println "no" if ($OPT{'debug'});
+        }
+    }
+
+    if ( $OS eq 'linux' ) {
+        if ( $OS_DISTRIBUTOR eq 'CentOS' ) {
+            foreach ( glob ( "$ENV{HOME}/Qt/*/gcc_64" ) ) {
+                $tool =  "$_/bin/qmake";
+                print "\n\t\tchecking $tool... " if ($OPT{'debug'});
+                my $out = `( $tool -v | grep QMake ) 2>&1`;
+                if ($? == 0) {
+                    print "$out " if ($OPT{'debug'});
+                    println $tool;
+                    return $tool;
+                }
+            }
+
+            $tool = '/usr/lib64/qt5/bin/qmake';
+
+        } elsif ( $OS_DISTRIBUTOR eq 'Ubuntu' ) {
+            foreach ( glob ( "$ENV{HOME}/Qt*/*/gcc_64" ) ) {
+                $tool =  "$_/bin/qmake";
+                print "\n\t\tchecking $tool... " if ($OPT{'debug'});
+                my $out = `( $tool -v | grep QMake ) 2>&1`;
+                if ($? == 0) {
+                    print "$out " if ($OPT{'debug'});
+                    println $tool;
+                    return $tool;
+                }
+            }
+
+            $tool = '';
+        }
+    } elsif ( $OS eq 'mac' ) {
+        $tool = '/Applications/QT/5.10.1/clang_64/bin/qmake';
+    }
+
+    if ( $tool ) {
+        print "\n\t\tchecking $tool... " if ($OPT{'debug'});
+        my $out = `( $tool -v | grep QMake ) 2>&1`;
+        if ($? == 0) {
+            print "$out " if ($OPT{'debug'});
+            println $tool;
+            return $tool;
+        }
+    }
+
+    println "no";
+    return '';
+}
+
 sub check_static_libstdcpp {
     my $option = '-static-libstdc++';
 
@@ -1522,7 +1619,7 @@ sub check_compiler {
             $flags = $n;
             $log = '                      int main() {                     }\n'
         } elsif ($n eq 'hdf5') {
-            $library = '-lhdf5';
+            $library = '-Wl,-Bstatic -lhdf5 -Wl,-Bdynamic -ldl -lm -lz';
             $log = '#include <hdf5.h>  \n int main() { H5close         (); }\n'
         } elsif ($n eq 'fuse') {
             $flags = '-D_FILE_OFFSET_BITS=64';
@@ -1565,7 +1662,14 @@ sub check_compiler {
         push ( @l, '' ) unless ( @l );
         for my $i ( 0 .. $#l ) {
             my $l = $l [ $i ];
-            next if ( $l && ! -d $l );
+            if ( $l && ! -d $l ) {
+                if ( $i == $#l ) {
+                    println 'no';
+                    return;
+                } else {
+                    next;
+                }
+            }
             my $gcc = "| $tool -xc $flags " . ($I ? "-I$I " : ' ')
                                       . ($l ? "-L$l " : ' ') . "- $library";
             $gcc .= ' 2> /dev/null' unless ($OPT{'debug'});


=====================================
ngs-sdk/Makefile.vers
=====================================
@@ -23,4 +23,4 @@
 # ===========================================================================
 
 # NGS-SDK and library version
-VERSION = 2.9.4
+VERSION = 2.10.0


=====================================
ngs-sdk/dispatch/version.h
=====================================
@@ -1 +1 @@
-#define NGS_SDK_VERSION "2.9.4"
+#define NGS_SDK_VERSION "2.10.0"


=====================================
ngs-sdk/setup/konfigure.perl
=====================================
@@ -211,6 +211,12 @@ my $OS_DISTRIBUTOR = '';
 if ($OS eq 'linux') {
     print "checking OS distributor... " unless ($AUTORUN);
     $OS_DISTRIBUTOR = `lsb_release -si 2> /dev/null`;
+    if ( $? != 0 ) {
+        $_ = `cat /etc/redhat-release 2> /dev/null`;
+        @_ = split ( / /  );
+        $OS_DISTRIBUTOR = $_[0] if ( $_[0] );
+    }
+    $OS_DISTRIBUTOR = '' unless ( $OS_DISTRIBUTOR );
     chomp $OS_DISTRIBUTOR;
     println $OS_DISTRIBUTOR unless ($AUTORUN);
 }
@@ -371,7 +377,7 @@ if ($TOOLS =~ /gcc$/) {
 } elsif ($TOOLS eq 'clang') {
     $CPP  = 'clang++' unless ($CPP);
     $CC   = 'clang -c';
-    my $versionMin = '-mmacosx-version-min=10.6';
+    my $versionMin = '-mmacosx-version-min=10.10';
     $CP   = "$CPP -c $versionMin";
     if ($BITS ne '32_64') {
         $ARCH_FL = '-arch i386' if ($BITS == 32);
@@ -448,6 +454,15 @@ if ( $PKG{REQ} ) {
 
 my @dependencies;
 
+if ( $PKG{OPT} ) {
+    foreach ( @{ $PKG{OPT} } ) {
+        if ( /^qmake$/ ) {
+            my $qmake = check_qmake();
+            push @dependencies, "QMAKE_BIN = $qmake";
+        } else { die; }
+    }
+}
+
 my %DEPEND_OPTIONS;
 foreach my $href (DEPENDS()) {
     $_ = $href->{name};
@@ -555,10 +570,12 @@ foreach my $href (@REQ) {
                     $found_src  = $fs  if (! $found_src  && $fs);
                 } elsif (! ($try =~ /$a{name}$/)) {
                     $try = File::Spec->catdir($try, $a{name});
-                    ($fi, $fl, $fil) = find_in_dir($try, $i, $l, $il);
+                    ($fi, $fl, $fil, $fs)
+                        = find_in_dir($try, $i, $l, $il, undef, undef, $src);
                     $found_itf  = $fi  if (! $found_itf  && $fi);
                     $found_lib  = $fl  if (! $found_lib  && $fl);
                     $found_ilib = $fil if (! $found_ilib && $fil);
+                    $found_src  = $fs  if (! $found_src  && $fs);
                 }
             } elsif ($need_bin) {
                 my (undef, $fl, $fil)
@@ -1461,6 +1478,86 @@ sub check_tool {
     }
 }
 
+sub check_qmake {
+    print "checking for QMake... ";
+
+    my $tool = 'qmake';
+    print "\n\t\trunning $tool... " if ($OPT{'debug'});
+    my $out = `$tool -v 2>&1`;
+    if ($? == 0) {
+        my $out = `( $tool -v | grep QMake ) 2>&1`;
+        if ($? == 0) {
+            print "$out " if ($OPT{'debug'});
+            println $tool;
+            return $tool;
+        }
+
+        println "wrong qmake" if ($OPT{'debug'});
+
+        print "\t\tchecking $ENV{PATH}...\n" if ($OPT{'debug'});
+        foreach ( split(/:/, $ENV{PATH})) {
+            my $cmd = "$_/$tool";
+            print "\t\trunning $cmd... " if ($OPT{'debug'});
+            my $out = `( $cmd -v | grep QMake ) 2>&1`;
+            if ($? == 0) {
+                print "$out " if ($OPT{'debug'});
+                if ( $out =~ /QMake/ ) {
+                    println $cmd;
+                    return $cmd;
+                }
+            }
+
+            println "no" if ($OPT{'debug'});
+        }
+    }
+
+    if ( $OS eq 'linux' ) {
+        if ( $OS_DISTRIBUTOR eq 'CentOS' ) {
+            foreach ( glob ( "$ENV{HOME}/Qt/*/gcc_64" ) ) {
+                $tool =  "$_/bin/qmake";
+                print "\n\t\tchecking $tool... " if ($OPT{'debug'});
+                my $out = `( $tool -v | grep QMake ) 2>&1`;
+                if ($? == 0) {
+                    print "$out " if ($OPT{'debug'});
+                    println $tool;
+                    return $tool;
+                }
+            }
+
+            $tool = '/usr/lib64/qt5/bin/qmake';
+
+        } elsif ( $OS_DISTRIBUTOR eq 'Ubuntu' ) {
+            foreach ( glob ( "$ENV{HOME}/Qt*/*/gcc_64" ) ) {
+                $tool =  "$_/bin/qmake";
+                print "\n\t\tchecking $tool... " if ($OPT{'debug'});
+                my $out = `( $tool -v | grep QMake ) 2>&1`;
+                if ($? == 0) {
+                    print "$out " if ($OPT{'debug'});
+                    println $tool;
+                    return $tool;
+                }
+            }
+
+            $tool = '';
+        }
+    } elsif ( $OS eq 'mac' ) {
+        $tool = '/Applications/QT/5.10.1/clang_64/bin/qmake';
+    }
+
+    if ( $tool ) {
+        print "\n\t\tchecking $tool... " if ($OPT{'debug'});
+        my $out = `( $tool -v | grep QMake ) 2>&1`;
+        if ($? == 0) {
+            print "$out " if ($OPT{'debug'});
+            println $tool;
+            return $tool;
+        }
+    }
+
+    println "no";
+    return '';
+}
+
 sub check_static_libstdcpp {
     my $option = '-static-libstdc++';
 
@@ -1522,7 +1619,7 @@ sub check_compiler {
             $flags = $n;
             $log = '                      int main() {                     }\n'
         } elsif ($n eq 'hdf5') {
-            $library = '-lhdf5';
+            $library = '-Wl,-Bstatic -lhdf5 -Wl,-Bdynamic -ldl -lm -lz';
             $log = '#include <hdf5.h>  \n int main() { H5close         (); }\n'
         } elsif ($n eq 'fuse') {
             $flags = '-D_FILE_OFFSET_BITS=64';
@@ -1565,7 +1662,14 @@ sub check_compiler {
         push ( @l, '' ) unless ( @l );
         for my $i ( 0 .. $#l ) {
             my $l = $l [ $i ];
-            next if ( $l && ! -d $l );
+            if ( $l && ! -d $l ) {
+                if ( $i == $#l ) {
+                    println 'no';
+                    return;
+                } else {
+                    next;
+                }
+            }
             my $gcc = "| $tool -xc $flags " . ($I ? "-I$I " : ' ')
                                       . ($l ? "-L$l " : ' ') . "- $library";
             $gcc .= ' 2> /dev/null' unless ($OPT{'debug'});



View it on GitLab: https://salsa.debian.org/med-team/ngs-sdk/commit/8b6afd352d26bdfa37f7eb55c9a20f927bf0c7b7

-- 
View it on GitLab: https://salsa.debian.org/med-team/ngs-sdk/commit/8b6afd352d26bdfa37f7eb55c9a20f927bf0c7b7
You're receiving this email because of your account on salsa.debian.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/debian-med-commit/attachments/20190911/6e595bfb/attachment-0001.html>


More information about the debian-med-commit mailing list