(2013/10/23 22:10), Max Brazhnikov wrote:
On Tue, 22 Oct 2013 16:19:55 -0700 Don Lewis wrote:
On  9 Oct, Mamoru Iwaki wrote:
Hi,

Re: math/scilab (Revision 327746)

I have failed to configure this port in compilation stage these days.
It is caused by an error in version check code for hdf5.  Because the
code writen in Java uses String.compareTo() for numeric comparision,
"1.8.10" is not recognized as a newer one than "1.8.4".
Could somebody correct this easy bug?

Scilab 5.4.1 is out now, so the port should probably be updated.  This
version of scilab removed the version check for hdf5.

This is the patch that I'm using with the current port.  Just drop it in
the files directory, run "make clean", and then rebuild.

--- configure.orig      2013-10-09 00:04:19.000000000 -0700
+++ configure   2013-10-09 10:41:39.000000000 -0700
@@ -12226,14 +12226,15 @@

  public class conftest {
      public static void main(String[] argv) {
-        String minVersion="1.8.4";
+        int minVersion=10804;
                              int[] vers = new int[3];
                  try { H5.H5get_libversion(vers); }
                  catch (Throwable ex) {System.exit(-1);}
                  String ver = vers[0] + "."+ vers[1] +"."+vers[2];
+                int Version = 10000*vers[0] + 100*vers[1] + vers[2];

                              System.out.println(ver);
-                                  if (minVersion.compareTo(ver) > 0) {
+                                  if (minVersion > Version) {
                                     System.exit(-1);
                                  }

I've committed this patch, thanks!

Max


Thanks, but the committed patch looks different from Don's original patch. Unfortunately, the committed patch still causes version check error in configuration stage, and the patch does not work as expected. We can find two very similar conftest codes around there. The original patch fixed the bug around line 12226 as above, howver the comitted one did around line 12281. I think the conftest around line 12226 (or both conftests around lines 12226 and ass81) should be corrected. The attached patch could be a candidate to correct both conftests.

Cheers
--
-----
Mamoru Iwaki
Japan
--- ./configure.orig    2011-07-20 08:15:42.000000000 +0000
+++ ./configure 2013-10-23 11:59:48.722499060 +0000
@@ -12226,14 +12226,15 @@
 
 public class conftest {
     public static void main(String[] argv) {
-        String minVersion="1.8.4";
+        int minVersion=10804;
                             int[] vers = new int[3];
                 try { H5.H5get_libversion(vers); }
                 catch (Throwable ex) {System.exit(-1);}
                 String ver = vers[0] + "."+ vers[1] +"."+vers[2];
+                int Version = 10000*vers[0] + 100*vers[1] + vers[2];
 
                             System.out.println(ver);
-                                  if (minVersion.compareTo(ver) > 0) {
+                                  if (minVersion > Version) {
                                    System.exit(-1);
                                 }
 
@@ -12281,14 +12281,15 @@
 
 public class conftest {
     public static void main(String[] argv) {
-        String minVersion="1.8.4";
+        int minVersion=10804;
                             int[] vers = new int[3];
                 try { H5.H5get_libversion(vers); }
                 catch (Throwable ex) {System.exit(-1);}
                 String ver = vers[0] + "."+ vers[1] +"."+vers[2];
+                int Version = 10000*vers[0] + 100*vers[1] + vers[2];
 
                             System.out.println(ver);
-                                  if (minVersion.compareTo(ver) != 0) {
+                                  if (minVersion > Version) {
                                    System.exit(-1);
                                 }
 
_______________________________________________
freebsd-ports@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"

Reply via email to