Bug 393 - Fix Windows Platform ..
Summary: Fix Windows Platform ..
Alias: None
Product: Gluegen
Classification: JogAmp
Component: core (show other bugs)
Version: 2
Hardware: All windows
: P1 critical
Assignee: Sven Gothel
Depends on:
Reported: 2010-04-07 14:50 CEST by Sven Gothel
Modified: 2010-04-07 20:41 CEST (History)
0 users

See Also:
Type: ---
SCM Refs:
Workaround: ---


Note You need to log in before you can comment on or make changes to this bug.
Description Sven Gothel 2010-04-07 14:50:55 CEST
Currently the Windows platform doesn't pass the junit tests.
Comment 1 Sven Gothel 2010-04-07 20:41:56 CEST
    Fixed junit test: test1
    - Create seperate native libraries to reflect a real world example:
        test1 - the library to bind to (no more declaring __stdcall @nn functions)
        BindingTest1p1 - the dynamic fixed linkage binding test1p1,
                         references dynamic library test1 at linktime.
        BindingTest1p2 - the dynamic runtime linkage binding test1p2,
                         loads dynamic library test1 at runtime.
    - gluegen-cpptasks-base.xml
      - target 'gluegen.cpptasks.detect.os'
        Set new property 'system.env.library.path'
            DYLD_LIBRARY_PATH (macosx)
            LD_LIBRARY_PATH   (unix)
            PATH              (windows)
      - target 'gluegen.cpptasks.striplibs'
        Strips the symbols out of the native libraries
        in case c.compiler.debug is false.
        Maybe configured with the properties:
            c.strip.tool, c.strip.args
    - Using system.env.library.path in junit call
      to find the test1 library in case of runtime linkage and lookup (test1p2).
    - Use gluegen.cpptasks.striplibs for all native libs ..
    - Added macosx32 in analogy to macosx64, both defaults to true now
    - com.jogamp.common.os.WindowsDynamicLinkerImpl:lookupSymbol()
      - Added lookup for __stdcall @nn (stepping alignment 4, max-args: 12)
        in case no undecorated __cdecl symbol is found.
    Fixed Windows platform:
    - Use proper path.seperator on Windows.
    - test1.dll needs proper soname inside for fixed linkage (test1p1)
      hence the output name must be test1.dll, not libtest1.so