diff options
author | Sven Gothel <[email protected]> | 2014-01-24 13:05:11 +0100 |
---|---|---|
committer | Sven Gothel <[email protected]> | 2014-01-24 13:05:11 +0100 |
commit | 022c31eefaa0c11fbc069fd35cf5311a556c9ae5 (patch) | |
tree | 15468323ce0ad1d1e368c1aaaba1f594742aacaa /src/java/jogamp/common/os/android/GluegenVersionActivity.java | |
parent | 2868816971bb80eb226e6edffc527d909ced755b (diff) |
Bug 856 - Android: Support dual ABI (x86 i686 *and* ARMv7arm), i.e. pick 'best' ABI
- Use 'os.arch' as a prelim CPUType for MachineDescription
- Always attempt to load a binary and parse it's elf header
- Linux: self-exe
- Android: gluegen-rt library
- Other: java lib
- Always use details (ABI) if ARM
- Android: Check CPU_TYPE and CPU_TYPE2
// FIXME / HACK:
// We use sCPUType for MachineDescriptionRuntime.getStatic()
// until we have determined the final CPU_TYPE, etc.
// MachineDescriptionRuntime gets notified via MachineDescriptionRuntime.notifyPropsInitialized() below.
//
// We could use Elf Ehdr's machine value to determine the bit-size
// used for it's offset table!
// However, 'os.arch' should be a good guess for this task.
Tested manually on
- Linux x86, x86_64, armhf (raspi)
- Android intel and arm
- Windows x86_64
- OSX x86_64
Diffstat (limited to 'src/java/jogamp/common/os/android/GluegenVersionActivity.java')
-rw-r--r-- | src/java/jogamp/common/os/android/GluegenVersionActivity.java | 33 |
1 files changed, 18 insertions, 15 deletions
diff --git a/src/java/jogamp/common/os/android/GluegenVersionActivity.java b/src/java/jogamp/common/os/android/GluegenVersionActivity.java index 581776b..5db3213 100644 --- a/src/java/jogamp/common/os/android/GluegenVersionActivity.java +++ b/src/java/jogamp/common/os/android/GluegenVersionActivity.java @@ -3,14 +3,14 @@ * * Redistribution and use in source and binary forms, with or without modification, are * permitted provided that the following conditions are met: - * + * * 1. Redistributions of source code must retain the above copyright notice, this list of * conditions and the following disclaimer. - * + * * 2. Redistributions in binary form must reproduce the above copyright notice, this list * of conditions and the following disclaimer in the documentation and/or other materials * provided with the distribution. - * + * * THIS SOFTWARE IS PROVIDED BY JogAmp Community ``AS IS'' AND ANY EXPRESS OR IMPLIED * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL JogAmp Community OR @@ -20,7 +20,7 @@ * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - * + * * The views and conclusions contained in the software and documentation are those of the * authors and should not be interpreted as representing official policies, either expressed * or implied, of JogAmp Community. @@ -40,21 +40,24 @@ import android.util.Log; public class GluegenVersionActivity extends Activity { TextView tv = null; - + @Override public void onCreate(Bundle savedInstanceState) { Log.d(MD.TAG, "onCreate - S"); super.onCreate(savedInstanceState); StaticContext.init(this.getApplicationContext()); + + System.setProperty("jogamp.debug", "all"); + tv = new TextView(this); final ScrollView scroller = new ScrollView(this); scroller.addView(tv); setContentView(scroller); - - tv.setText(VersionUtil.getPlatformInfo()+Platform.NEWLINE+GlueGenVersion.getInstance()+Platform.NEWLINE+Platform.NEWLINE); + + tv.setText(VersionUtil.getPlatformInfo()+Platform.NEWLINE+GlueGenVersion.getInstance()+Platform.NEWLINE+Platform.NEWLINE); Log.d(MD.TAG, "onCreate - X"); } - + @Override public void onStart() { Log.d(MD.TAG, "onStart - S"); @@ -64,14 +67,14 @@ public class GluegenVersionActivity extends Activity { } Log.d(MD.TAG, "onStart - X"); } - + @Override public void onRestart() { Log.d(MD.TAG, "onRestart - S"); super.onRestart(); if(null != tv) { tv.append("> restarted"+Platform.NEWLINE); - } + } Log.d(MD.TAG, "onRestart - X"); } @@ -80,7 +83,7 @@ public class GluegenVersionActivity extends Activity { Log.d(MD.TAG, "onResume - S"); if(null != tv) { tv.append("> resumed"+Platform.NEWLINE); - } + } super.onResume(); Log.d(MD.TAG, "onResume - X"); } @@ -90,7 +93,7 @@ public class GluegenVersionActivity extends Activity { Log.d(MD.TAG, "onPause - S"); if(null != tv) { tv.append("> paused"+Platform.NEWLINE); - } + } super.onPause(); // Log.d(MD.TAG, "onPause - x"); // finish(); // ensure destroy after pause() -> one shot activity @@ -103,7 +106,7 @@ public class GluegenVersionActivity extends Activity { if(null != tv) { tv.append("> stopped"+Platform.NEWLINE); } - super.onStop(); + super.onStop(); Log.d(MD.TAG, "onStop - X"); } @@ -115,7 +118,7 @@ public class GluegenVersionActivity extends Activity { } Log.d(MD.TAG, "onDestroy - x"); StaticContext.clear(); - super.onDestroy(); + super.onDestroy(); Log.d(MD.TAG, "onDestroy - X"); - } + } } |