The Jenkins Controller is preparing for shutdown. No new builds can be started.
The file was modified
src/java/com/jogamp/common/os/NativeLibrary.java (diff) The file was modified
src/java/com/jogamp/common/util/ReflectionUtil.java (diff) The file was modified
src/java/com/jogamp/common/ExceptionUtils.java (diff) The file was modified
src/java/com/jogamp/common/ExceptionUtils.java (diff)
Commit
9e13e8c78ed69bb7afcd49abe8bf69340dc06223
by Sven Gothel Bug 1106 - Bitstream: Simplify 'msbFirst' case for bulk operations / Add setting of stream position (optional) - Add setting position entry, optionally supported, e.g. ByteBufferStream and ByteArrayStream - Remove 'msbFirst' parameter on all 'bulk' read/write operations. These methods use LSB-first always, allowing proper stream access of data w/ different bit-sizes. Data is now read/write as little-endian and swapped accordingly. Optimizations are adopted for LSB-first operations. This change removes API confusion/bugs: - removes one decision (parameter) - removes the data reversion case - removes bugs w/ different bit-sizes The file was modified
src/junit/com/jogamp/common/util/TestBitstream02.java (diff) The file was modified
src/junit/com/jogamp/common/util/TestBitstream01.java (diff) The file was modified
src/junit/com/jogamp/common/util/TestBitstream00.java (diff) The file was modified
src/java/com/jogamp/common/util/Bitstream.java (diff) The file was modified
make/scripts/runtest.sh (diff) The file was modified
src/junit/com/jogamp/common/util/TestBitstream04.java (diff) The file was modified
src/junit/com/jogamp/common/util/TestBitstream03.java (diff)
Commit
150ea4f231c9629ef9ef354e3f1a92a516d46f91
by Sven Gothel Bug 1108 - IOUtil.getTempDir(..): Difficulties to determine executable access permission on Windows via BATCH file execution Try using explicit call to Windows 'cmd.exe' w/ referencing the BATCH file location, via 'Runtime.getRuntime().exec(new String[] { "cmd", "/c", "a.bat" } );' While the bug itself could not be reproduced here, I could test on Windows 7 (64bit and 32bit), as well as an WindowsXP 32bit that no regression occured. The file was modified
make/scripts/runtest.sh (diff) The file was modified
src/java/com/jogamp/common/util/IOUtil.java (diff) The file was modified
make/scripts/runtest-x64.bat (diff) The file was modified
make/scripts/runtest-x32.bat (diff)
Commit
558d51e384e8c4e2bf3d4f646724c3351101b605
by Sven Gothel GlueGen JavaEmitter: Use proper class access modifiers for emitted classes incl. ProcAddressTable Emitted Java classes as well as optional ProcAddressTable shall use unique generated access modifiers covering all MethodAccess cases. The file was modified
src/java/com/jogamp/gluegen/JavaEmitter.java (diff) The file was modified
src/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.java (diff) The file was modified
src/java/com/jogamp/gluegen/JavaConfiguration.java (diff) The file was modified
make/scripts/java-win32.bat (diff) The file was modified
make/scripts/make.gluegen.all.win64.bat (diff) The file was modified
make/scripts/runtest.sh (diff) The file was modified
make/scripts/test-win32-smb_share.bat (diff) The file was modified
make/scripts/java-win64.bat (diff) The file was modified
make/scripts/runtest-x64.bat (diff) The file was modified
make/scripts/make.gluegen.all.win32.bat (diff) The file was modified
make/scripts/runtest-x32.bat (diff) The file was modified
src/java/com/jogamp/common/util/cache/TempFileCache.java (diff) The file was modified
src/java/com/jogamp/common/util/cache/TempJarCache.java (diff)
Commit
181dc8ae227cd5cbecf60ab8d973bb8eef7c45f0
by Sven Gothel Bug 1108 - Fix difficulties to determine executable access permission on Windows via BATCH file execution Batch file execution test via direct call, i.e.'a.bat', does not work on some Windows machine, not reproducible here! A workaround would be to call the batch file explicit via 'CMD /c a.bat': - works when using 'Software Restriction Policies' (Bug 1015 Comment 2) - does _not_ work when denying ACL "Traverse Folder / Execute File" permission (Bug 1015 Comment 3) Due to this bug, we need to use a native execution: - Performing executable test w/ native exe file instead of batch file on Windows x86 32bit and 64bit, - using [1] TinyPE XP-W8 Compatible - x86 32bit and 64bit - 268 bytes - Tested on: WinXP-32bit, Win7-64bit and Win8-64bit - Author/License: Ange Albertini, BSD Licence, 2010-2013 - On all other Windows machines (ARM, ..), we still use direct execution of 'a.bat' but may add native exe files for missing platforms. +++ This patch injects said binaries within the java jar file and copies it into the 'to be tested' temp folder for execution. [1] TinyPE XP-W8 Compatible - x86 32bit and 64bit - 268 bytes is included within 'src/native/tinype-corkami', build manually and imported as 'src/java/com/jogamp/common/util/bin/exe-windows-i586-268b.bin'. +++ The file was added src/native/tinype-corkami/tiny-simple.asm (diff) The file was added src/java/com/jogamp/common/util/bin/exe-windows-i586-268b.bin (diff) The file was added src/native/tinype-corkami/readme.txt (diff) The file was modified
src/java/com/jogamp/common/util/IOUtil.java (diff) The file was added src/native/tinype-corkami/consts.inc (diff) The file was added src/native/tinype-corkami/tiny.asm (diff) The file was added src/native/tinype-corkami/make.bat (diff) The file was modified
make/build.xml (diff) The file was modified
src/java/com/jogamp/gluegen/procaddress/ProcAddressConfiguration.java (diff) The file was modified
src/java/com/jogamp/common/ExceptionUtils.java (diff) The file was modified
make/jogamp-androidtasks.xml (diff) The file was modified
make/scripts/make.gluegen.all.android-armv6-cross.sh (diff) The file was added make/scripts/setenv-android-tools.sh (diff) The file was modified
make/scripts/make.gluegen.all.android-armv7-cross.sh (diff)
Commit
ee977a8a773b3461c42f64583d6cfe1ab5322b9e
by Sven Gothel Bug 1123 - Android Launcher/ClassLoaderUtil: Fails to work w/ Android 5.* (lollipop/art) Our Android ClassLoaderUtil, used to daisy chain dex ClassLoader using GlueGen, Joal and Jogl APK files, doesn't work on Android 5.* (lollipop) with the art runtime. See below adb log. Seems like this is a known issue https://code.google.com/p/android/issues/detail?id=82122 Workaround mentioned is to copy the APK file(s) to a temp directory .. The file was modified
src/java/jogamp/android/launcher/ClassLoaderUtil.java (diff) The file was added make/lib/android-sdk/21/NOTICE.txt (diff) The file was added make/lib/android-sdk/21/android-java-src.txt (diff) The file was added make/lib/android-sdk/21/android-java-src.zip (diff) The file was added make/lib/android-sdk/21/android.jar (diff) The file was added make/lib/android-sdk/21/LICENSE.txt (diff) The file was modified
src/java/com/jogamp/gluegen/JavaEmitter.java (diff) The file was modified
src/java/jogamp/common/os/elf/Shdr.java (diff) The file was modified
src/java/jogamp/common/os/elf/ElfHeader.java (diff) The file was modified
src/java/jogamp/common/os/elf/Ehdr.java (diff)
Commit
30933c60156c67a9624fefae2be6504300ce71bb
by Sven Gothel Bug 1122 : Add AArch64 support (Android, GNU/Linux and in general) - Add AArch64 detection via - Elf Parser - Android properties - Java properties - Android: Validate CPUType.Family _and_ ABIType - MachineDescription - Remove redundant Type ID and its field - Reuse X86_64_UNIX for AArch64 (static config) New ARCH 'aarch64' for ant: <os arch> armv8a aarch64 New CPUType.ARM64 (ARM): java: os.arch aarch64 arm64 New CPUType.ARMv8_A (ARM): java: os.arch armv8-a arm64-v8a New ABIType: EABI_AARCH64 The file was modified
src/java/com/jogamp/common/os/MachineDescription.java (diff) The file was modified
src/java/com/jogamp/common/os/AndroidVersion.java (diff) The file was modified
make/gluegen-cpptasks-base.xml (diff) The file was added make/scripts/adb-install-all-arm64-v8a.sh (diff) The file was added make/scripts/adb-reinstall-all-arm64-v8a.sh (diff) The file was added make/scripts/make.gluegen.all.android-aarch64-cross.sh (diff) The file was modified
src/java/jogamp/common/os/PlatformPropsImpl.java (diff) The file was added make/lib/gluegen-cpptasks-android-aarch64.xml (diff) The file was modified
src/java/com/jogamp/common/os/Platform.java (diff) The file was modified
src/java/jogamp/common/os/MachineDescriptionRuntime.java (diff) The file was modified
src/native/common/JVMUtil.c (diff) The file was modified
src/native/unix/UnixDynamicLinkerImpl_JNI.c (diff) The file was modified
src/native/windows/WindowsDynamicLinkerImpl_JNI.c (diff) The file was modified
make/stub_includes/platform/gluegen_stdint.h (diff) The file was modified
make/lib/gluegen-cpptasks-android-aarch64.xml (diff) The file was modified
make/lib/gluegen-cpptasks-android-armv7.xml (diff) The file was modified
make/stub_includes/platform/glibc-compat-symbols.h (diff) The file was modified
make/stub_includes/platform/gluegen_stddef.h (diff) The file was modified
make/gluegen-cpptasks-base.xml (diff) The file was modified
make/lib/gluegen-cpptasks-android-armv6.xml (diff)
Commit
12feaa7d3b1544098f684d851e3caff1ec88cbc8
by Sven Gothel Refine Native Library Code: Bulk Permissions, Cleanup DynamicLinker impl. - and fix Android AArch64 BionicDynamicLinker (Bug 1122 ) - Bulk Permissions ProcAddressTable.reset(..) performs address lookup in one block. Now claiming all permissions upfront once, and releasing them afterwards. - Cleanup DynamicLinker impl. Proper top-down impl. of DynamicLinkerImpl, handling all security code and validations. - Fix Android AArch64 BionicDynamicLinker (Bug 1122 ) Dalvik uses diff RTLD_* defines for AArch64! The file was modified
src/java/jogamp/common/os/UnixDynamicLinkerImpl.java (diff) The file was modified
src/java/jogamp/common/os/MacOSXDynamicLinkerImpl.java (diff) The file was added src/java/jogamp/common/os/BionicDynamicLinker32bitImpl.java (diff) The file was modified
src/java/jogamp/common/os/DynamicLinkerImpl.java (diff) The file was modified
src/java/com/jogamp/common/os/DynamicLibraryBundle.java (diff) The file was removed src/java/jogamp/common/os/BionicDynamicLinkerImpl.java (diff) The file was added src/java/jogamp/common/os/BionicDynamicLinker64BitImpl.java (diff) The file was modified
src/java/jogamp/common/os/WindowsDynamicLinkerImpl.java (diff) The file was modified
src/java/com/jogamp/gluegen/runtime/ProcAddressTable.java (diff) The file was modified
src/java/jogamp/common/os/PosixDynamicLinkerImpl.java (diff) The file was modified
src/java/com/jogamp/common/os/DynamicLinker.java (diff) The file was modified
src/java/com/jogamp/common/os/DynamicLookupHelper.java (diff) The file was modified
src/java/com/jogamp/common/os/NativeLibrary.java (diff)
Commit
0deceee37d943faa7c34971388863a27f395d6a5
by Sven Gothel Bug 1122 : Refine AArch64 and OSType/32Bit incl. MachineDescription Android: - Detect ABIType.EABI_GNU_ARMHF via 'armeabi-v7a-hard' Platform.CPUType: - contains is32Bit now MachineDescription: - Rename *x86_64_unix* -> *lp64_unix*, reflecting universal __LP64__ mode - Remove is32Bit, which is determined by CPUType The file was modified
src/java/com/jogamp/gluegen/JavaEmitter.java (diff) The file was modified
src/java/jogamp/common/os/MachineDescriptionRuntime.java (diff) The file was modified
src/java/com/jogamp/common/os/AndroidVersion.java (diff) The file was modified
src/java/com/jogamp/common/os/MachineDescription.java (diff) The file was modified
src/java/com/jogamp/gluegen/cgram/types/StructLayout.java (diff) The file was modified
src/java/com/jogamp/gluegen/cgram/types/Type.java (diff) The file was modified
src/java/com/jogamp/common/os/Platform.java (diff)
Commit
a3f2d08801c5a54048faca52f422bcededf81b2a
by Sven Gothel Bug 1125 - Make ELF Reader 'jogamp.common.os.elf' Stateless ELF Reader 'jogamp.common.os.elf' currently uses Platform's pre-determined OS_TYPE and CPUType. It also uses the host platforms MachineDescription, hence can not read ELF files from other machines. This also forbids Platform to determine CPUType etc w/o having a valid 'os.arch' property. +++ ElfHeader should be split in - ElfHeaderPart1 (CPUType independent) - ElfHeaderPart2 (CPUType dependent) Fix shall make the ELF Reader self containing by only using ELF CPUType data, etc. This requires customization of struct parsing, where MachineDescription.Static index shall be - defined in ElfHeaderPart1 using e_Ident's CPUType. - used in ElfHeaderPart2 and all its struct types. The file was modified
src/java/com/jogamp/gluegen/JavaConfiguration.java (diff) The file was modified
src/java/com/jogamp/gluegen/JavaEmitter.java (diff) The file was added src/java/jogamp/common/os/elf/Ehdr_p2.java (diff) The file was modified
src/java/jogamp/common/os/elf/SectionHeader.java (diff) The file was modified
src/java/com/jogamp/common/util/VersionUtil.java (diff) The file was modified
src/java/jogamp/common/os/elf/SectionArmAttributes.java (diff) The file was modified
src/java/com/jogamp/common/os/AndroidVersion.java (diff) The file was modified
src/junit/com/jogamp/common/util/IntIntHashMapTest.java (diff) The file was modified
src/java/jogamp/common/os/MachineDescriptionRuntime.java (diff) The file was added src/java/jogamp/common/os/elf/ElfHeaderPart2.java (diff) The file was modified
make/elf-header.cfg (diff) The file was modified
make/stub_includes/os/elf_header.h (diff) The file was removed src/java/jogamp/common/os/elf/Ehdr.java (diff) The file was added src/java/jogamp/common/os/elf/Ehdr_p1.java (diff) The file was modified
src/java/jogamp/common/os/elf/IOUtils.java (diff) The file was modified
src/java/com/jogamp/common/os/Platform.java (diff) The file was modified
src/java/jogamp/common/os/PlatformPropsImpl.java (diff) The file was modified
make/scripts/runtest.sh (diff) The file was modified
src/java/com/jogamp/common/os/MachineDescription.java (diff) The file was removed src/java/jogamp/common/os/elf/ElfHeader.java (diff) The file was modified
src/java/jogamp/common/os/elf/Shdr.java (diff) The file was added src/java/jogamp/common/os/elf/ElfHeaderPart1.java (diff) The file was modified
src/junit/com/jogamp/common/os/TestElfReader01.java (diff) The file was modified
src/junit/com/jogamp/common/util/IntObjectHashMapTest.java (diff) The file was modified
src/java/com/jogamp/common/nio/Buffers.java (diff) The file was modified
src/java/com/jogamp/common/os/NativeLibrary.java (diff)
Commit
7db9df61142694965b50f2e0553d4c9e5668439b
by Sven Gothel Bug 1126 - Remove static query requirement of MachineDescriptor, find matching StaticConfig at runtime; Fix PPC (Bug 1056 ) and MIPSLE (Bug 1014 ) issues. Currently the StaticConfig is being queried via the key[OSType, CPUType ..] as pre-determined by Java properties or the ELF parser. This adds complication to maintain different platforms and the key query might not even be sufficient. The MachineDescriptor's StaticConfig only purpose shall be to speed-up native data size and offset/alignment retrieval. This is done by using the StaticConfig index within all StaticConfig[]s as a lookup-index for the precomputed struct's size and offset tables. +++ Solution: Rename: MachineDescriptor -> MachineDataInfo Rename: MachineDescriptorRuntime -> MachineDataInfoRuntime After having defined os.and.arch (OSType, CPUType and ABIType) w/ the optional help of the now self containing ELF Reader (Bug 1125 ), the native gluegen-rt library gets loaded enabling JNI methods. It is satisfactory to retrieve MachineDataInfo at runtime w/ JNI and find the matching/compatible StaticConfig. Only in case none is found, the program needs to abort. Otherwise the found MachineDataInfo.StaticConfig and MachineDataInfo are stored for further use (see above). This removes above complication and key to StaticConfig mapping. New platforms simply need to add a new unique entry into the StaticConfig[] table. ++ Also fixes Bug 1056 (PPC), thanks to tmancill [@] debian [.] org, and Bug 1014 (MIPSLE), thanks to Dejan Latinovic. Parts of the patch for Bug 1014 from Dejan Latinovic are included. also solved by this change set. The file was modified
make/build.xml (diff) The file was modified
src/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.java (diff) The file was modified
src/java/com/jogamp/gluegen/CMethodBindingEmitter.java (diff) The file was removed src/native/common/MachineDescriptionRuntime.c (diff) The file was modified
src/java/com/jogamp/gluegen/cgram/types/SizeThunk.java (diff) The file was added src/java/jogamp/common/os/MachineDataInfoRuntime.java (diff) The file was modified
make/gluegen-cpptasks-base.xml (diff) The file was removed src/java/com/jogamp/common/os/MachineDescription.java (diff) The file was modified
src/junit/com/jogamp/junit/sec/Applet01.java (diff) The file was modified
src/java/jogamp/common/os/PlatformPropsImpl.java (diff) The file was modified
src/java/com/jogamp/common/util/IOUtil.java (diff) The file was modified
make/elf-header.cfg (diff) The file was removed src/java/jogamp/common/os/MachineDescriptionRuntime.java (diff) The file was modified
src/junit/com/jogamp/common/nio/TestPointerBufferEndian.java (diff) The file was modified
src/junit/com/jogamp/common/nio/TestStructAccessorEndian.java (diff) The file was modified
src/java/com/jogamp/gluegen/package.html (diff) The file was modified
src/java/com/jogamp/gluegen/cgram/types/Type.java (diff) The file was modified
src/java/jogamp/common/os/elf/Shdr.java (diff) The file was modified
src/java/com/jogamp/gluegen/JavaConfiguration.java (diff) The file was modified
src/java/com/jogamp/gluegen/cgram/types/Field.java (diff) The file was modified
src/java/jogamp/common/os/elf/ElfHeaderPart2.java (diff) The file was modified
src/junit/com/jogamp/common/util/TestPlatform01.java (diff) The file was added src/native/common/MachineDataInfoRuntime.c (diff) The file was modified
src/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.java (diff) The file was modified
src/java/com/jogamp/gluegen/cgram/types/StructLayout.java (diff) The file was modified
make/scripts/runtest.sh (diff) The file was modified
src/java/jogamp/common/os/elf/ElfHeaderPart1.java (diff) The file was modified
src/java/jogamp/common/os/elf/Ehdr_p2.java (diff) The file was modified
src/java/jogamp/common/os/elf/Ehdr_p1.java (diff) The file was added src/java/com/jogamp/common/os/MachineDataInfo.java (diff) The file was modified
src/java/com/jogamp/gluegen/JavaEmitter.java (diff) The file was modified
src/java/com/jogamp/common/os/Platform.java (diff) The file was modified
src/java/com/jogamp/common/util/VersionUtil.java (diff) The file was modified
src/junit/com/jogamp/common/util/TestIOUtil01.java (diff) The file was removed make/lib/gluegen-cpptasks-android-armv7.xml (diff) The file was removed make/scripts/make.gluegen.all.android-armv7-cross.sh (diff) The file was removed make/scripts/crosstest-junit-android-armv7-rel.sh (diff) The file was modified
make/jogamp-androidtasks.xml (diff) The file was modified
make/build.xml (diff) The file was removed make/scripts/adb-reinstall-all-armv7.sh (diff) The file was added make/scripts/adb-reinstall-all-aarch64.sh (diff) The file was modified
make/scripts/adb-install-all-armv6.sh (diff) The file was added make/scripts/adb-install-all-aarch64.sh (diff) The file was removed make/scripts/adb-install-all-arm64-v8a.sh (diff) The file was removed make/scripts/adb-install-all-armv7.sh (diff) The file was removed make/scripts/adb-reinstall-all-arm64-v8a.sh (diff) The file was modified
make/build.xml (diff) The file was modified
make/jogamp-env.xml (diff)