Bug 837 - Add optional clang support for all modules
Summary: Add optional clang support for all modules
Alias: None
Product: General
Classification: JogAmp
Component: infrastructure (show other bugs)
Version: unspecified
Hardware: All all
: --- enhancement
Assignee: Sven Gothel
Depends on:
Blocks: 871
  Show dependency treegraph
Reported: 2013-09-19 06:44 CEST by Sven Gothel
Modified: 2013-10-24 19:47 CEST (History)
0 users

See Also:
Type: ---
SCM Refs:
ant-cpptasks bd772e618b30d7e3ee71b2bb12a4d85139cfe15a ant-cpptasks a5c3fdc48b9bc5113b8445127c330c2c055423a7 ant-cpptasks 2603158cb1a0ff29f5a23de4c0ba2ce759f574cf ant-cpptasks 2cdd1070056c0f7e9dc7f40de19c2bfdfef0432a ant-cpptasks aef08ebd882f74baf666c373c34d7a11ebf5fa89 ant-cpptasks 6a5bc6fd3127cbd70fd7d337a26587c5ccb3fa51 ant-cpptasks 8c2badcaba6b791082d50efda4441b7c69f4adbf gluegen 5e56a336adbd4eb44bdddb893961bbbd9b3e443a gluegen 040bba68fc5e06414176f8e7887c83be20dab0f0 gluegen 112d4d97426e9f49cb73dea58ec220292238d118 gluegen a5dacb0b2b6e17f00efe520c1d23bc33ba5d9f78 gluegen 94f6668bb9ce2adfb338ec3d7ac580deeaff622c joal ca6a6675513d2ee58f62ddfd3d3681779621a1ad jogl 4b866d2686ab9c3fd7cf6708925b4663ad81e359 jogl 5dce252bfcc49995c2bda1d91e010c4c73f71ddb jogl 77196201f7e9ae3ceed493fb025264c90ed9a554
Workaround: ---


Note You need to log in before you can comment on or make changes to this bug.
Description Sven Gothel 2013-09-19 06:44:53 CEST
clang is llvm's frontend, almost compatible w/ gcc.

clang support shall allow OSX, *BSD and other OS to utilize this compiler.
clang shall be enabled via a build property, i.e. via gluegen.properties.

to support clang, 'ant-cpptasks' must be made aware.

we shall extract 'ant-cpptasks' and 'ant-contrib' from svn and add them to our git repository
to properly maintain them. currently they are still maintained via a set of patches.
Comment 1 Sven Gothel 2013-09-19 06:52:43 CEST
  - http://jogamp.org/git/?p=ant-contrib.git;a=summary
  - http://jogamp.org/git/?p=ant-cpptasks.git;a=summary

Fix compile errors in conjunction w/ clang, use _APPLE_ predef-macro on OSX, ..

GlueGen Property:
  'gcc.compat.compiler' defaults to 'gcc', maybe 'clang'