| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
native windows dll-names)
Add support for Windows dynamic library target, i.e. NAME.dll instead of libNAME.dll.
This is now required when linking a GLUENAME1.dll to TOOLNAME1.dll,
where GLUENAME1.dll is loaded via System.loadLibrary() and TOOLNAME1.dll required to be found.
Might be a change in the current ming64 toolchain.
Before this change, the library name 'libTOOLNAME1.so' was written into `libGLUENAME1.so`
and hence could not be found (manually renamed to a dll name).
Now we can also drop the manual rename of libNAME1.so -> NAME1.dll, finally :)
|
|
|
|
| |
keyalg 'RSA', keysize '2048', validity '365', digestalg 'SHA256'
|
|
|
|
| |
android.api.level' (default: level 24 or 'N')
|
| |
|
| |
|
| |
|
|
|
|
| |
attributes and reuse it.
|
| |
|
|
|
|
|
|
|
|
| |
PlatformPropsImpl: Remove static OSXVersion and Version* vars, add JAVA_17 and JAVA_21 flag.
PlatformPropsImpl's static OSXVersion is JOGL specific and will be moved into its GLContextImpl.
PlatformPropsImpl's static Version are not required and eats up memory where it can be used transitionary.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
inclusion/exclusion based on build.dynamiclibs
Exclude *.symbols files implicitly when building 'build.dynamiclibs'
and include *.symbols files implicitly when not building 'build.dynamiclibs' (static libs)
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Otherwise the build won't produce dummy junit test results for jenkins etc.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
As we can no more rely on having AWT headful system,
use JOGL/NEWT GLWindow to simply dump the version.
Hence 'java -jar jogamp-fat.jar' behaves similar to 'etc/test.sh'.
|
|
|
|
| |
added for correctness)
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
aapt.signed)
The new SDK d8 dex'ing tool performs Java8 desugaring, hence allows using Java8 code style.
We use d8 instead of dx in the 'aapt.signed' macro of 'jogamp-androidtasks.xml'.
For the proper desugaring, we pass 'android-min.jar and 'target.rt.jar' Android and Java8
system runtime jar-files to d8's classpath.
Macro 'aapt.signed' also receives the new optional element 'd8-classpaths'
to allows caller to pass further required jar-files to the d8 classpath.
See build-test.xml.
|
|
|
|
| |
required [min=21, target=28], javac w/ 24, some NDK's clang with 22.
|
|
|
|
| |
and packages
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
STL headers (default since NDK r18)
Using LLVM's c++_shared as of NDK r18: https://developer.android.com/ndk/guides/cpp-support.html
LLVM's c++ headers must come before other system header!
Also see https://github.com/android/ndk/issues/452 and https://gitlab.kitware.com/cmake/cmake/issues/17059
Also adapt make/lib/gluegen-cpptask-android* files:
- Compiler
-- align for potential C++ usage, i.e.:
-- don't use '-sysroot' not '-isysroot'
-- IF using C++ STL, prepend ANDROID_TOOLCHAIN_SYSROOT1_INC_STL
-- just add normal sysroot headers via '-isystem'
- Linker
-- Use ANDROID_TOOLCHAIN_SYSROOT1_LIB1 and ANDROID_TOOLCHAIN_SYSROOT1_LIB2 for '-L' search path
-- where ANDROID_TOOLCHAIN_SYSROOT1_LIB2 is for 'libc++' -> 'c++_shared'
|
|
|
|
|
|
|
|
|
| |
specific includes like asm/types.h
Also adapt make/lib/gluegen-cpptask-android* files:
- Set C++ stdlib = libstdc++
- Set isysroot (same as sysroot)
- Add isystem: *_SYSROOT1_INC, *_SYSROOT1_INC_ARCH and *_SYSROOT1_INC/c++/v1
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
headers (compile)
Utilizing '-sysroot' with the linker, we require standard FS layout.
'~/Android/Sdk/ndk/20.1.5948944/platforms/android-24/arch-arm64'
contains the proper std FS layout for libraries under usr/lib,
but lacks the header files.
We call this 'ANDROID_TOOLCHAIN_SYSROOT0' and shall be used for linking.
'~/Android/Sdk/ndk/20.1.5948944/toolchains/llvm/prebuilt/linux-x86_64/sysroot'
native libraries are not under std FS layout,
but headers are under std FS layout for compilation under usr/include.
We call this 'ANDROID_TOOLCHAIN_SYSROOT1' and shall be used for compilation.
Identified while working on openal-soft Android compilation,
where we need to pass ANDROID_TOOLCHAIN_SYSROOT0
|
|
|
|
|
|
|
|
| |
scales better for all platforms.
http://jogamp.org/git/?p=ant-cpptasks.git
commit 8353e0cc85705ca8f81f8563ad975026978b6745
|
|
|
|
|
|
| |
set since API level 23
TODO: Do this for all JogAmp modules!
|
|
|
|
|
|
|
|
|
| |
directives for apk
The 'Name <folder>' leads new apk to claim the missing resources (the folder actually)
and fails to install the apk.
Hence removed tagging the folders sealed.
|
|
|
|
|
|
|
| |
http://jogamp.org/git/?p=ant-cpptasks.git
commit e1933c74b9c256332cd12c9a1094e4687b535112
Bug 1417 Android clang support: Introduce clangLinkerOption '-target <abi>'
|
|
|
|
|
|
|
|
|
| |
make/lib/gluegen-cpptask-android-<abi>.xml and scripts
All aligned now
- gluegen-cpptasks-android-aarch64.xml
- gluegen-cpptasks-android-armv6.xml (this has ld flag --no-undefined disabled, due to internal missing symbols)
- gluegen-cpptasks-android-x86.xml
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2019-12-10 (GlueGen w/ android-aarch64 patched)
Default Platform: Android 7.0 Nougat, API level 24 supports Java 1.8
Reworked gluegen/make/scripts/setenv-android-tools.sh,
following canonical environment variables and sets all
required variables for cross-compilation.
See file's comments!
ant files:
- android.version -> android.api.level (default 24)
- android.jar defaults to ${gluegen.root}/make/lib/android-sdk/24/android.jar (provided)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
supposedly detected mandatory new properties
Move new detected build properties build.dynamiclibs, build.staticlibs and output.lib.type
from gluegen.cpptasks.detect.os.1 to gluegen.cpptasks.detect.os.
This enables setting these mandatory properties always, as gluegen.cpptasks.detect.os.1 gets overriden
by custom cross-compilation configurations.
Also moving the property dump from gluegen.cpptasks.detect.os.1 to gluegen.cpptasks.detect.os
for same reasons.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Document Java8 target constraints, i.e. where we need to set source, target and bootclasspath
to ensure target runtime Java8 compliance.
Fix one odd compile issue!
Using two theorethical identical GNU/Linux Debian 10 machines with same set of installed software,
one passes (like MacOS, Windows) and one fails.
The failure was due to the CStructAnnotationProcessor's @SupportedSourceVersion tag.
This downgrades the SourceVersion's previous bump from 6->11 (commit 610493b1724b5d91327f478338ff5d029bdcc032)
down to 8.
Interesting times ..
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Test1p1Test1p1JavaEmitter
'com.jogamp.gluegen.test.junit.generation.Test1p1JavaEmitter' exposes a regression
using MingW64 8.1.0: System.loadLibrary() gives a "Can't find dependent libraries".
Here, 'Bindingtest1p1' is linked against 'test1' and fails to load
due to its wrong dependent library name within 'Bindingtest1p1'.
MingW64 8.1.0 dropped 'libtest1.so' into 'Bindingtest1p1.dll',
which is surely wrong. Even passing '-Wl,-soname=test1.dll' didn't help.
Note: Such constellation would only work with adding
the lib-path to PATH on Windows.
Since we don't utilize the method in any of our projects,
but use the dynamic library lookup method - this is not a blocker,
but wasted some good time.
|
|
|
|
|
|
|
| |
test.
We allow java [8-10] to pass even thought we require java 11 or greater.
This gives us the opportunity to run the junit tests on a java 8 VM (tested).
|
| |
|
|
|
|
| |
make/lib/gluegen-cpptasks-*
|
|
|
|
| |
detailed build commandline.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
compile time javac
Also prepare the 'target.releaselevel' property to be set by 'RELEASE_LEVEL' environment,
however - we do not use it at this point.
For now, we build gluegen-rt using '-source 1.8' '-target 1.8'
and the bootclasspath of openjdk8 rt.jar to ensure java8 compatibility.
Alternatively one could use '--release 8' instead using the java11
distributed modules. However, I think the above method is more safe,
only allowing java8 rt.jar to be used for compilation.
Further, gluegen.jar is build using '-target 1.8' only,
since it musty use java11 sources at least for the javadoc taglet.
|
| |
|