Index: gluegen2/make/scripts/make.gluegen.all.linux-ppc64le.sh
===================================================================
--- /dev/null
+++ gluegen2/make/scripts/make.gluegen.all.linux-ppc64le.sh
@@ -0,0 +1,24 @@
+#! /bin/sh
+
+#    -Dc.compiler.debug=true \
+#    -Dgluegen.cpptasks.detected.os=true \
+#    -DisUnix=true \
+#    -DisLinux=true \
+#    -DisLinuxX86=true \
+#    -DisX11=true \
+
+MACHINE=ppc64le
+ARCH=ppc64el
+TRIPLET=powerpc64le-linux-gnu
+
+export TARGET_PLATFORM_LIBS=/usr/lib/$TRIPLET
+export TARGET_JAVA_LIBS=/usr/lib/jvm/java-7-openjdk-$ARCH/jre/lib/$MACHINE
+
+export GLUEGEN_CPPTASKS_FILE="lib/gluegen-cpptasks-linux-$MACHINE.xml"
+
+#export JOGAMP_JAR_CODEBASE="Codebase: *.jogamp.org"
+export JOGAMP_JAR_CODEBASE="Codebase: *.goethel.localnet"
+
+ant \
+    -Drootrel.build=build-linux-$MACHINE \
+    $* 2>&1 | tee make.gluegen.all.linux-$MACHINE.log
Index: gluegen2/make/gluegen-cpptasks-base.xml
===================================================================
--- gluegen2.orig/make/gluegen-cpptasks-base.xml
+++ gluegen2/make/gluegen-cpptasks-base.xml
@@ -48,6 +48,7 @@
    -   isLinuxMips
    -   isLinuxMipsel
    -   isLinuxPpc
+   -   isLinuxPpc64le
    -   isLinuxs390
    -   isLinuxs390x
    -   isLinuxSparc
@@ -133,6 +134,7 @@
    -   compiler.cfg.linux.mips
    -   compiler.cfg.linux.mipsel
    -   compiler.cfg.linux.ppc
+   -   compiler.cfg.linux.ppc64le
    -   compiler.cfg.linux.s390
    -   compiler.cfg.linux.s390x
    -   compiler.cfg.linux.sparc
@@ -155,6 +157,7 @@
    -   linker.cfg.linux.mips
    -   linker.cfg.linux.mipsel
    -   linker.cfg.linux.ppc
+   -   linker.cfg.linux.ppc64le
    -   linker.cfg.linux.s390
    -   linker.cfg.linux.s390x
    -   linker.cfg.linux.sparc
@@ -417,6 +420,15 @@
     
       
     
+    
+      
+        
+        
+      
+    
+    
+      
+    
     
       
         
@@ -601,6 +613,7 @@
     
     
     
+    
     
     
     
@@ -683,6 +696,10 @@
     
   
 
+  
+    
+  
+
   
     
   
@@ -707,7 +724,7 @@
     
   
 
-  
+  
 
   
     
@@ -1268,6 +1285,9 @@
     
     
 
+    
+    
+
     
     
 
@@ -1499,6 +1519,13 @@
       
     
 
+    
+      
+      
+      
+      
+    
+
     
       
        
@@ -1520,7 +1547,7 @@
       
     
 
-    
+    
         
     
 
Index: gluegen2/src/java/jogamp/common/os/PlatformPropsImpl.java
===================================================================
--- gluegen2.orig/src/java/jogamp/common/os/PlatformPropsImpl.java
+++ gluegen2/src/java/jogamp/common/os/PlatformPropsImpl.java
@@ -509,6 +509,7 @@ public abstract class PlatformPropsImpl
      *   linux-armv6hf
      *   linux-i586
      *   linux-ppc
+     *   linux-ppc64le
      *   linux-mips
      *   linux-mipsel
      *   linux-superh
@@ -572,7 +573,7 @@ public abstract class PlatformPropsImpl
                 _and_arch_tmp = "amd64";
                 break;
             case PPC64:
-                _and_arch_tmp = "ppc64";
+                _and_arch_tmp = littleEndian ? "ppc64le" : "ppc64";
                 break;
             case MIPS_64:
                 _and_arch_tmp = "mips64";
Index: gluegen2/src/java/com/jogamp/common/os/MachineDataInfo.java
===================================================================
--- gluegen2.orig/src/java/com/jogamp/common/os/MachineDataInfo.java
+++ gluegen2/src/java/com/jogamp/common/os/MachineDataInfo.java
@@ -63,6 +63,7 @@ public class MachineDataInfo {
   private final static int[] size_sparc_32_sunos  =  { 4,    4,     4,     8,     16,    4,   8192 };
   private final static int[] size_x86_32_windows  =  { 4,    4,     4,     8,     12,    4,   4096 };
   private final static int[] size_lp64_unix       =  { 4,    8,     4,     8,     16,    8,   4096 };
+  private final static int[] size_ppc_64_unix     =  { 4,    8,     4,     8,     16,    8,  65536 };
   private final static int[] size_x86_64_windows  =  { 4,    4,     4,     8,     16,    8,   4096 };
 
   /*                               arch   os          i8, i16, i32, i64, int, long, float, doubl, ldoubl, ptr */
@@ -106,8 +107,10 @@ public class MachineDataInfo {
       SPARC_32_SUNOS( size_sparc_32_sunos, align_sparc_32_sunos),
       /** {@link Platform.CPUType#X86_32} Windows */
       X86_32_WINDOWS( size_x86_32_windows, align_x86_32_windows),
-      /** LP64 Unix, e.g.: {@link Platform.CPUType#X86_64} Unix, {@link Platform.CPUType#ARM64} EABI, {@link Platform.CPUType#PPC64} Unix, .. */
+      /** LP64 Unix, e.g.: {@link Platform.CPUType#X86_64} Unix, {@link Platform.CPUType#ARM64} EABI, .. */
       LP64_UNIX(      size_lp64_unix,    align_lp64_unix),
+      /** {@link Platform.CPUType#PPC64} Unix */
+      PPC_64_UNIX(      size_ppc_64_unix,    align_lp64_unix),
       /** {@link Platform.CPUType#X86_64} Windows */
       X86_64_WINDOWS( size_x86_64_windows, align_x86_64_windows);
       // 8
Index: gluegen2/src/java/jogamp/common/os/MachineDataInfoRuntime.java
===================================================================
--- gluegen2.orig/src/java/jogamp/common/os/MachineDataInfoRuntime.java
+++ gluegen2/src/java/jogamp/common/os/MachineDataInfoRuntime.java
@@ -112,6 +112,8 @@ public class MachineDataInfoRuntime {
       } else {
           if( osType == Platform.OSType.WINDOWS ) {
               return StaticConfig.X86_64_WINDOWS;
+          } else if ( Platform.CPUType.PPC64 == cpuType ) {
+              return StaticConfig.PPC_64_UNIX;
           } else {
               // for all 64bit unix types (x86_64, aarch64, sparcv9, ..)
               return StaticConfig.LP64_UNIX;
Index: gluegen2/make/build.xml
===================================================================
--- gluegen2.orig/make/build.xml
+++ gluegen2/make/build.xml
@@ -299,6 +299,12 @@
        
     
 
+    
+      
+       
+       
+    
+
     
       
        
@@ -317,7 +323,7 @@
        
     
     
-    
+