X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=altosuilib%2FAltosUILib.java;h=2fa6cbd621fc16df3ceef1a65f3079fb681a28c9;hb=8f2d82461f3cf5da157b23ea45a2fa60d56b196b;hp=18c4c3d9eee0bc2035331eddab9b76bbdaf0dd21;hpb=8bff2822c242d2878b408b9c0d8a7647108ea4b1;p=fw%2Faltos diff --git a/altosuilib/AltosUILib.java b/altosuilib/AltosUILib.java index 18c4c3d9..2fa6cbd6 100644 --- a/altosuilib/AltosUILib.java +++ b/altosuilib/AltosUILib.java @@ -15,12 +15,12 @@ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. */ -package org.altusmetrum.altosuilib_1; +package org.altusmetrum.altosuilib_6; import java.awt.*; import libaltosJNI.*; -import org.altusmetrum.altoslib_3.*; +import org.altusmetrum.altoslib_6.*; public class AltosUILib extends AltosLib { @@ -80,24 +80,42 @@ public class AltosUILib extends AltosLib { static public boolean initialized = false; static public boolean loaded_library = false; + static public boolean has_bluetooth = false; - static final String[] library_names = { "altos", "altos32", "altos64" }; + static final String[] library_names_32 = { "altos", "altos32", "altos64" }; + static final String[] library_names_64 = { "altos", "altos64", "altos32" }; public static boolean load_library() { if (!initialized) { - for (String name : library_names) { + String model = System.getProperty("sun.arch.data.model", "missing"); + boolean is_64 = false; + if (model.equals("64")) { + is_64 = true; + } else if (model.equals("32")) { + ; + } else { + String arch = System.getProperty("os.arch", "missing"); + if (arch.endsWith("64")) + is_64 = true; + } + for (String name : is_64 ? library_names_64 : library_names_32) { try { - System.out.printf ("Trying library %s\n", name); System.loadLibrary(name); libaltos.altos_init(); loaded_library = true; - System.out.printf ("Using library %s\n", name); break; } catch (UnsatisfiedLinkError e) { System.out.printf("Link error %s\n", e.getMessage()); loaded_library = false; } } + + String OS = System.getProperty("os.name"); + + if (OS.startsWith("Linux")) { + has_bluetooth = true; + } + initialized = true; } return loaded_library;