aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Add 'asset' URLConnection; IOUtil uses URLConnection / incr. effeciency; ↵Sven Gothel2012-03-1733-204/+1192
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Android ClassLoaderUtil cleanup; - Add 'asset' URLConnection - Please read API doc 'PiggybackURLConnection' and 'AssetURLConnection' - Solves generic resource handling where platform locations may differ, ie ClassLoader lookup on Android in the 'assets/' subfolder. - New Android 'AssetDexClassLoader' uses 'assets/' folder for findResource(..) - aapt.signed (our APK ant task) - uses 'assets/' folder - adds the 'assetsdir' attribute allowing to copy other assets into the APK - IOUtil uses URLConnection / incr. effeciency - using URLConnection on all getResource(..) since URL is connected anyways for validation and URLConnection can be used by caller right away - String getRelativeOf(URL, String) -> URL getRelativeOf(URL, String) - preserves scheme, authority, etc - simple parentOf handling, more efficient - reusing new 'asset' protocol impl. - Android ClassLoaderUtil cleanup; - Use createClassLoader(..) impl for build-in static jogamp and user APKs, which removes code redundancy Tests: New code path, especially 'assets' are covered by new unit tests, no regressions on Linux.
* Android: New ActivityLauncher (jogamp.android-launcher.apk)Sven Gothel2012-03-1414-51/+1444
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ActivityLauncher provides delegating Activities, allowing the user to: - daisy chain custom APK classes and native libraries to the classpath - name one custom activity which gets delegated to, the downstream activity Overview: [User:a1] -- (usr-data) --> [Launcher] -> [User:a2] + using [other packages..] [User APK] - The user provided APK [JogAmp APK] - JogAmp APKs [User:a1] - The initial user activity, which starts the [Launcher]. Providing data to [Launcher]: [User:a2], [User APK] Resides in [User APK] [User:a2] - The actual downstream 'real' activity, spoiled w/ full fledged ClassLoader having access to all packages as requested, ie. [User APK], .. Resides in [User APK] [Launcher] - The launcher activity. Gets called by [User:a1]. Creates a new ClassLoader, daisy chainging all requested APKs. Instantiates [User:a2] w/ new ClassLoader. Delegates all calls to [User:a2]. Resides in [JogAmp APK].
* PropertyAccess: Push down 'isPropertyDefined(final String property, final ↵Sven Gothel2012-03-133-6/+6
| | | | | | boolean jnlpAlias)' for trusted properties The method shall be called by the respective Debug specialization, which registers the trusted property prefix.
* SecurityUtil: Generalize cert validation and AccessControlContext query; ↵Sven Gothel2012-03-1311-142/+271
| | | | | | | | | | | | | | | | | | PropertyAccess: Fix security code, grant access to common 'trusted' properties - SecurityUtil - Generalize cert validation for JAR and property access - Grant access to common AccessControlContext for 'same' cert - PropertyAccess: - Fix security code: Passing the current AccessControlContext from the caller didn't include priviledges. - Grant access to common 'trusted' properties, which removes the need of passing the AccessControlContext for general properties like 'jnlp.', 'jogamp.' .. - Enable registering 'trusted' properties, when caller's cert is 'same'
* Intro.: PropertyAccess ; Added safe PropertyAccess for JNILibLoaderBase, ↵Sven Gothel2012-03-137-89/+170
| | | | | | | | | | | | | | | | | Platform, IOUtil, .. - Intro.: PropertyAccess - Base class of all Debug impl, reduces redundancies. - jnlpAlias'ed trusted property is queried within local AccessControlContext to avoid 'JRE' implementation differences (should not be required). - throw NPE and IllegalArgumentException for invalid property key - Added safe PropertyAccess - JNILibLoaderBase: sun.jnlp.applet.launcher - Platform: jogamp.gluegen.UseTempJarCache - IOUtil: java.io.tmpdir
* Fix rel GLUEGEN_CPPTASKS_FILE commit e617834dcabdb83f383a2d2a82fcd2d9d987c154Sven Gothel2012-03-101-5/+7
|
* Allow GLUEGEN_CPPTASKS_FILE to be relative to gluegen.root ; Load ↵Sven Gothel2012-03-103-11/+19
| | | | gluegen-cpptasks-base.xml in custom files w/ gluegen.root.abs-path.
* android remote test script: panda02 is my default test machineSven Gothel2012-03-101-2/+2
|
* Stabilize open InputStream's / Closeable's: Decorate w/ try-finally and ↵Sven Gothel2012-03-103-6/+48
| | | | close within the latter
* android remote adb test fixes: (1) Add connect; (2) Remove overriding ↵Sven Gothel2012-03-101-1/+3
| | | | | | | | | | explicit BOOTCLASSPATH, use default. (2) Android 4.0.3 LEB 12.02 / Pandaboard requires the original BOOTCLASSPATH, otherwise dependencies are broken and dalvikvm crashes. Adding 'our' ant-junit-all.apk to 'complete' the set of our required junit/ant classes seems to work well on V. 2.3.6 (Samsung Galaxy S) and V. 4.0.3.
* gluegen-cpptasks-android-armv7: Add 'gluegen.cpptasks.detect.os.custom' ↵Sven Gothel2012-03-072-15/+25
| | | | | | | | target which makes it self-contained build script and jenkins-node startup-script solely use env-vars. Remove env. TARGET_ARCH, which was same as TARGET_TRIPPLE.
* Don't build and use gluegen.apk (compile time only) ; Don't test classloader ↵Sven Gothel2012-03-075-15/+39
| | | | | | -> JarURL on Android All [remaining] tests passed on Android!
* TempJarCache: Check for NULL jarURL and reuse contains queriesSven Gothel2012-03-071-6/+15
|
* android test: Specify 'java.io.tempdir' and add TestJarsInJar.apk / Disable ↵Sven Gothel2012-03-074-7/+29
| | | | most of tests in TestJarUtil
* build: Move c.compiler.debug, c.compiler.use-debug and c.compiler.optimise ↵Sven Gothel2012-03-072-7/+7
| | | | | | | from build.xml -> gluegen-cpptasks-base.xml - unifies definition - echo values
* android build/test fixes and refinementSven Gothel2012-03-073-10/+43
| | | | | | | | | | | | | | | | | | | | | remote test fix: - run targetcommand w/ explicit root via 'su' - rsync: more excludes, only use '-rt' - explicit chmod 644 on results - adb commands include naming of remote machine: -s ${env.TARGET_IP}:${env.TARGET_ADB_PORT} GlueGen-cpptasks-android-armv7: - use unique project name (warning) - gcc + -fpic -D__unix__ - ld + -fpic -nostdlib -Bdynamic -Wl,-dynamic-linker,/system/bin/linker -Wl,-z,nocopyreloc explicit add 'dl' to list of libs
* make.gluegen.all.linux-armv7-cross.sh: Use common TARGET_PLATFORM_ROOTSven Gothel2012-03-061-2/+3
|
* cpptasks: Cleanup patch file and move single patches to obsolete for ↵Sven Gothel2012-03-065-229/+8
| | | | clarification
* android crosscompile script, use android-ndk-r7b but favor generic ↵Sven Gothel2012-03-061-6/+18
| | | | android-ndk (sym-link)
* Update and cleanup cpptasks build & archive.Sven Gothel2012-03-0611-4/+320
| | | | Including Edwin Vane's work in commit d51d2aaad01d1c8188193a7913c6ef0fc38ea798
* Merge branch 'pulled'Sven Gothel2012-03-067-101/+70
|\
| * Changes to make gluegen build with NDK r7Edwin Vane2012-02-287-101/+70
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - A bug in cpptasks was getting in the way of a working build with NDK r7. A local patch to cpptasks fixed the bug. - The patch is added as make/lib/cpptasks_gcclinker.patch and applies cleanly to cpptasts @ revision 177. - The result of building cpptasks r177 with this patch is part of the commit as well. - Cleaned up and simplified the android cross-compile script in make/scripts. - Cleaned up arguments passed to gcc for compiling and linking to look more like the command lines used for building NDK samples. - Some differences are necessary as cpptasks won't let us specify any binary other than 'gcc' for building. See gluegen-cpptasks-android-armv7.xml for comments on the matter. - Thinking forward to x86 support, generalized jogamp-androidtasks.xml to install the gluegen shared library in a subdirectory of image/lib named for the targetted ABI for packaging with aapt. This file is no-longer ARM-specific.
* | Fix NIO Buffers<T> .put<Type1>(<Type2>) - Add appropriate source -> ↵Sven Gothel2012-03-051-0/+25
| | | | | | | | destination handling (Float/Long/Double/..)
* | Fix local armel pathSven Gothel2012-03-032-2/+4
|/
* Dummy unit test name slice -> statusSven Gothel2012-02-241-1/+1
|
* If junit.is.disabled, copy a dummy TEST xml file, otherwisa Jenkins claims ↵Sven Gothel2012-02-242-1/+14
| | | | failure.
* Even if 'junit.is.disabled', we need to produce the test archive (7z), ↵Sven Gothel2012-02-241-1/+4
| | | | otherwise the jenkins build fails.
* Introduce environment-var/property to disable unit tests (per node)Sven Gothel2012-02-244-8/+13
| | | | JUNIT_DISABLED -> junit.is.disabled
* minor: verbose outputSven Gothel2012-02-242-10/+4
|
* Add gluegen.basename property, allowing to pass the JOB_NAME to the find ↵Sven Gothel2012-02-241-9/+15
| | | | location
* Add NODE_LABEL in scripts/make.gluegen.all.linux-armv7-cross.shSven Gothel2012-02-241-0/+2
|
* Add required NODE_LABEL, ie label/linux-armv7-img, allowing to find the ↵Sven Gothel2012-02-241-7/+7
| | | | proper path for jenkins builds
* fix targetcommand.sh name on targetSven Gothel2012-02-241-4/+4
|
* Exposing custom gluegen-cpptask.file for crosscompilation presets, adding ↵Sven Gothel2012-02-245-16/+63
| | | | | | gluegen-cpptasks-linux-armv7.xml Env: GLUEGEN_CPPTASKS_FILE -> property: gluegen-cpptasks.file
* ProcAddressEmitter: Even use this emitter for manual impl. methods, which ↵Sven Gothel2012-02-231-18/+19
| | | | allows an enhanced comments of signature (GLEmitter)
* Set 'jvmDataModel.arg' property in crosscompile build scripts, where ↵Sven Gothel2012-02-233-7/+2
| | | | 'gluegen.cpptasks.detected.os' is set.
* Passing environment-vars and ant-properties to junit tests, enabling fine ↵Sven Gothel2012-02-232-1/+21
| | | | | | | | | | | grained controll of test behavior. Environment vars, mapped to properties: JUNIT_RUN_ARG0 -> junit.run.arg0 JUNIT_RUN_ARG1 -> junit.run.arg1 This allows us to disable ScreenMode on Linux-ARM-Omap4 for example, where XRandR calls consume up to 3s per test.
* build scriptSven Gothel2012-02-221-1/+1
|
* Fix crosstests (TestJarUtil and PCPP)Sven Gothel2012-02-191-2/+2
|
* Fix [linux] armv7 cross build (regression of commit ↵Sven Gothel2012-02-191-1/+10
| | | | 196c325aa3dddb0d775e8fb80e26333208fe6c7e) - generalize env. TARGET_JAVA_LIBS
* Fix linux-armv7 crosscompilationSven Gothel2012-02-192-3/+8
|
* Merge pull request #9 from xranby/masterSven Gothel2012-02-181-4/+4
|\ | | | | Fix ARM gluegen-rt-natives-linux-"amdv7, amdv5".jar name lookup typo.
| * Fix ARM gluegen-rt-natives-linux-"amdv7, amdv5".jar name lookup typo.Xerxes Rånby2012-02-181-4/+4
|/ | | | Signed-off-by: Xerxes Rånby <[email protected]>
* Add more debug/analisys information. Throw exception when attempting to ↵Sven Gothel2012-02-152-6/+34
| | | | override a rename instruction w/ diff new value
* Don't ignore GlueGen.debug() in static DEBUG flags; Add ↵Sven Gothel2012-02-151-3/+18
| | | | JavaConfiguration.DEBUG_RENAMES
* Platform: Add Java VersionNumberSven Gothel2012-02-131-2/+11
|
* DynamicLibraryBundle (enhancement)Sven Gothel2012-02-127-49/+53
| | | | | | | - Hold DEBUG, DEBUG_LOOKUP in DynamicLookupHelper - Tool complete only if named tool's GetProcAddressFunc is avail - Allow no tool/glue lib's - Use DEBUG_LOCKUP for lockup symbol trace
* Fix setting default bootclasspath (target.rt.jar and host.rt.jar) for OS XSven Gothel2012-01-231-4/+16
|
* javac - setup encoding to UTF-8Sven Gothel2012-01-232-0/+4
|
* Add verification script for compiled-in Java versionSven Gothel2012-01-221-0/+25
|