summaryrefslogtreecommitdiffstats
path: root/make/stub_includes
Commit message (Collapse)AuthorAgeFilesLines
* Bug 1363: Java 11: Recognize Java9+ ..; Support JEP 178 static linkage ↵Sven Gothel2019-06-171-0/+4
| | | | | | | | | | | | | | | | | | | | | libgluegen-rt[.so] -> libgluegen_rt[.so|.a] Recognize Java9+ .. - Recognize new Java9+ version string as of JEP 223 - Avoid Classpath's private findLibrary call +++ Support JEP 178 static linkage (OpenJDK 1.8) - Need to change native library basename: libgluegen-rt[.so] -> libgluegen_rt[.so|.a] since the dash '-' is not supported in a ANSI-c function name. - Added 'JNI_OnLoad_gluegen_rt' to recognize statical linked JNI code - Added JNI_VERSION_1_8 to jni/jni.h
* Bug 1190: Fix arm6hf + aarch64 gcc options, adapt glibc-compat-symbols.hSven Gothel2019-04-071-1/+7
| | | | | | - arm6hf needs the fpu to be specified, we still use the lowest armv6 hard float denominator - aarch64 shall have the -march compiler argument as well - glibc-compat-symbols.h Finally drop the glibc versioning on memcpy for both
* Bug 1295: Add linux-aarch64 GNU/Linux AArch64 crosscompile supportXerxes Rånby2016-12-121-2/+6
| | | | | | | | | | | | | | | | | | | make/lib/gluegen-cpptasks-linux-aarch64.xml: Add missing -DisLinux=true required when crosscompiling Remove -marm -mfloat-abi=hard flags unrecognisable by aarch64 crosscompile toolchain make/lib/toolchain/aarch64-linux-gnueabi/bin/*: Symlink to /usr/local/x-tools/aarch64-unknown-linux-gnueabi/bin/aarch64-unknown-linux-gnueabi-* make/scripts/make.gluegen.all.linux-aarch64-cross.sh: New crosscompile script make/stub_includes/platform/glibc-compat-symbols.h: glibc 2.17 is the first glibc version that support aarch64 however memcpy is not versioned for aarch64 Disable versioning for linux glibc/aarch64 Signed-off-by: Xerxes Rånby <[email protected]>
* Fix jni/macosx/jawt_md.h: Put comment in /* */ brackets ..Sven Gothel2015-07-151-1/+1
|
* Refine JNI header's jni_md.h: Always include 'gluegen_stdint.h' for ↵Sven Gothel2015-03-243-0/+6
| | | | | | | | 'standalone' usage. On OSX java7 we include the system jni.h and GlueGen's jni_md.h .. Fixes regression of commit 532b8df474976b474f0cf4eb2d93588ded2ad3fe
* Bug 1149 - Replacing PCPP w/ JCPP, allowing complete macro handling (Part-2: ↵Sven Gothel2015-03-241-0/+7
| | | | JCPP submodule, build, test and doc)
* Import JOGL's JNI header and unify them for GlueGen and C-Compiler usage.Sven Gothel2015-03-238-21/+2245
| | | | | | | We had macosx JNI header and different JNI header included in JOGL for native compilation and GlueGen runs. This unifies the header for any use.
* Bug 1125 - Make ELF Reader 'jogamp.common.os.elf' StatelessSven Gothel2015-02-011-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Bug 1122: Reflect __LP64__ and _aarch64__ in GlueGen's stdint/stddef and ↵Sven Gothel2015-01-303-4/+8
| | | | Android compilerflags
* Fix glibc-compat-symbols.h: Distinguish clang and gcc (Aligned w/ ↵Sven Gothel2014-06-101-1/+9
| | | | openal-soft commit adc3413dda197bbd6b879ff98e897b8fbc66cc39)
* glibc-compat-symbols.h: Use GLIBC_2.0 for 32bit ; Use asm(..) instead of ↵Sven Gothel2013-11-171-8/+13
| | | | __asm__(..) to support clang ; Branch on OS predef-macro for GLIBC detection, allow __GNUC__ and __clang__ on __linux__
* Complete a5dacb0b2b6e17f00efe520c1d23bc33ba5d9f78: Only patch symbols w/ ↵Sven Gothel2013-09-131-1/+2
| | | | __GNUC__, aka 'gcc' - _without_ clang !
* glibc-compat-symbols.h: Only patch symbols w/ __GNUC__, aka 'gcc'Sven Gothel2013-09-131-6/+13
|
* jawt_md.h: fix preprocessor commentSven Gothel2013-09-131-1/+1
|
* Complete 5d211c6fa6a0452cc4569712e436184e34504a88: Remove ↵Sven Gothel2013-06-173-133/+0
| | | | generate.nativelibrary.sources and dynlink* gluegen files due to manual impl.
* glibc-compat-symbols.h: Add __arm__ -> GLIBC_2.4 ; default is now ↵Sven Gothel2013-04-211-3/+13
| | | | GLIBC_2.2.5 // Still minimum required is GLIBC_2.4!
* Add 'glibc-compat-symbols.h' to force usage of minimal GLIBC symbols ↵Sven Gothel2013-04-211-0/+15
| | | | | | | | | | | | | | | | | | | | | | currently for memcpy only, used in our x86_32 and default gcc toolchain cmake file. Note: JogAmp's minimum GLIBC is 2.4 due to '__stack_chk_fail' (stack overflow checking) GLIBC 2.4 - March 2006 - Standard for LSB 4.0, Used in SLES 10 We could add compile/link option '-fno-stack-protector', however stack protection seems reasonable and a pre 2006 distribution a bit too 'far fetched' for our multimedia bindings anyway. +++ Added convenient script 'make/scripts/check-glibc-version.sh' to sort and list GLIBC versions per symbol. +++ Besides openal-soft (commit 554b34927cd6a2e0c0ce227108ebf8521bcba889), jogamp modules do not reference any GLIBC symbols > 2.4 per default! If so, 'glibc-compat-symbols.h' should be included per default!
* OSX/Java7 darwin/jawt_md.h Workaround ; Disable OSX/i386 if compiled w/ ↵Sven Gothel2013-02-172-0/+115
| | | | | | | | | | | | | | Java7 [1.7 - 2.0]; Valid Java range [1.6 - 2.0]. - OSX/Java7 darwin/jawt_md.h Workaround Include JOGL's JNI MacOSX platform headers, since Oracle's Java7 darwin/jawt_md.h has X11 dependencies and does not define JAWT_SurfaceLayers. - Disable OSX/i386 if compiled w/ Java7 [1.7 - 2.0] Set macosx32 depending on 'ant.java.version' - Valid Java range [1.6 - 2.0] Foresee new Java versions 1.9 and 2.0 :)
* Bug 681: Add Basic ELF Header + ARM EABI Section Parsing, allowing to ↵Sven Gothel2013-02-083-0/+533
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | distinguish ARM soft-float/hard-float (part-1) https://jogamp.org/bugzilla/show_bug.cgi?id=681 + * References: + * <ul> + * <li>http://linux.die.net/man/5/elf</li> + * <li>http://www.sco.com/developers/gabi/latest/contents.html</li> + * <li>http://infocenter.arm.com/ + * <ul> + * <li>ARM IHI 0044E, current through ABI release 2.09</li> + * <li>ARM IHI 0045D, current through ABI release 2.09</li> + * </ul></li> Added self contained jogamp.common.os.elf package w/ entry point class ElfHeader to read a RandomAccessFile and parse it as an ELF file. ELF Parsing completness: - Header: OK - SectionHeader: OK - Section Type SHT_ARM_ATTRIBUTES: OK - Will be read into SectionArmAttributes - Used to distinguisgh soft/hard VFP float Tested manually on: - Linux intel 32bit / 64bit, arm soft-float and hard-float
* GlueGen proper size / alignment of primitive and compound types usage [1/2] ↵Sven Gothel2011-07-172-2/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Preparation. Currently GlueGen fails for type long (size) and some alignments (see package.html). - The size and alignment values shall be queried at runtime. - Compound alignment needs to follow the described natural alignment (also @runtime). - - Build - add Linux Arm7 (EABI) - junit test - added compound/struct tests, pointing out the shortcomings of current impl. - package.html - Added alignment documentation - remove intptr.cfg - add GluGen types int8_t, int16_t, uint8_t, uint16_t - move MachineDescription* into runtime - Platform - has runtime MachineDescription - moved size, .. to MachineDescription - use enums for OSType, CPUArch and CPUType defined by os.name/os.arch, triggering exception if os/arch is not supported. This avoids Java String comparison and conscious os/arch detection. - MachineDescription: - compile time instances MachineDescription32Bits, MachineDescription64Bits - runtime queried instance MachineDescriptionRuntime - correct size, alignment, page size, ..
* gluegen stddef/stdint cc header: add missing intptr_t/uintptr_t, proper ↵Sven Gothel2011-06-102-17/+39
| | | | formating, proper _WIN64 case
* Expand tabs to 4 spacesSven Gothel2011-02-091-8/+8
|
* Gluegen: Types (stddef/stdint), Header and Predefined Macro ChangeSven Gothel2010-11-0915-68/+150
| | | | | | | | | | | | | Read API doc ad GlueGen.java New predefined types: wchar_t, intptr_t, uintptr_t New reusable headers for gluegen usage: make/stub_includes/gluegen for native usage: make/stub_includes/platform New predefined macro #define __GLUEGEN__ 2
* Changed license (-> BSD) and content (minimum tokens) of dynamic-linker.hSven Gothel2010-11-081-35/+43
|
* New Int64Buffer type, which is being used for gluegen 'long *'Sven Gothel2010-03-294-0/+85
|
* Copied JOGL_2_SANDBOX r145 on to trunk; JOGL_2_SANDBOX branch is now closedKenneth Russel2009-06-153-0/+125
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@147 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Deleted obsolete source code in preparation for copying JOGL_2_SANDBOXKenneth Russel2009-06-153-125/+0
| | | | | | | on to trunk git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@146 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Changed implementation of ArgumentIsString to work with wide-character Kenneth Russel2008-05-271-2/+3
| | | | | | | | | | | | | | null-terminated strings on Windows. Changed Windows dynamic linker to use LoadLibraryW which is the only variant available on Windows CE. Changed GetProcAddress to explicitly named GetProcAddressA; this is implicitly the only variant available on Windows XP. Tested by compiling gluegen-rt.dll for both Windows XP and Windows CE. Also brought dynlink-unix-CustomJavaCode.java in line with modifications that were apparently hand made to the UnixDynamicLinkerImpl and MacOSXDynamicLinkerImpl classes. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@79 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Added NativeLibrary helper class to com.sun.gluegen.runtime package, Kenneth Russel2006-08-013-0/+124
principally to generally solve the problem of downloading dependent libraries of GlueGen-generated native code, as in the case of JOAL and OpenAL reported recently by Shawn Kendall on JOAL forums. Autogenerated Java and native code associated with this new NativeLibrary helper class is currently checked in to the GlueGen workspace to make it easier to build across multiple platforms; it can be regenerated by running the generate.nativelibrary.sources Ant target in the GlueGen workspace. Building of the native code in the GlueGen workspace is currently disabled by default and can be enabled by specifying -Dbuild.native=1 on the ant command line. Use of the new NativeLibrary class in JOAL is currently disabled by default and can be enabled by specifying -Djoal.use.gluegen=1 to applications using JOAL. New functionality has been lightly tested with JOAL on Windows and appears to be working. More testing, including build and Java Web Start deployment testing, to follow on other platforms. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@37 a78bb65f-1512-4460-ba86-f6dc96a7bf27