Quantcast

Need a way to remove default supported platform from AbstractGccCompatibleToolChain

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Need a way to remove default supported platform from AbstractGccCompatibleToolChain

Raymond Chiu
Hi,

We ran into an issue when creating toolchain because the implementation of Gcc and Clang supports X86 by default.  In our case, we want to setup two different toolchains for x86 (32 and 64 bits).
The problem comes when we define the platform to include the x86 as the architecture.  We would define them as something like this:
    model {
        platforms {
            x86 {
                architecture "x86"
                operatingSystem "linux"
            }
            x86_64 {
                architecture "x86_64"
                operatingSystem "linux"
            }
        }
    }
Any Gcc/Clang toolchains we create will support both platforms because of the default TargetPlatformConfiguration in AbstractGccCompatibleToolChain.  This makes it impossible to use different toolchains for different x86 platforms.

Is there any plans to add the ability to remove the default TargetPlatformConfiguration?

Thanks,
Raymond

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Need a way to remove default supported platform from AbstractGccCompatibleToolChain

Daz DeBoer-2
Hi Raymond
Is "linux" indeed both the target operating system and the operating system on which the build executes? If not, then you should specify a different operating system for the platform. Then, the tool chain defaults will not attempt to build. The set of operatingSystems is not currently extensible, unfortunately, but if the platform OS and the build OS are not the same, the tool chain default configuration will not apply.

You could use this as a workaround even if the target OS and build OS are both 'linux'. I'm not very happy with the current Platform/OS/Arch model, but improving it isn't on our short-term roadmap.
Daz


On Wed, Jul 30, 2014 at 5:07 PM, Raymond Chiu <[hidden email]> wrote:
Hi,

We ran into an issue when creating toolchain because the implementation of Gcc and Clang supports X86 by default.  In our case, we want to setup two different toolchains for x86 (32 and 64 bits).
The problem comes when we define the platform to include the x86 as the architecture.  We would define them as something like this:
    model {
        platforms {
            x86 {
                architecture "x86"
                operatingSystem "linux"
            }
            x86_64 {
                architecture "x86_64"
                operatingSystem "linux"
            }
        }
    }
Any Gcc/Clang toolchains we create will support both platforms because of the default TargetPlatformConfiguration in AbstractGccCompatibleToolChain.  This makes it impossible to use different toolchains for different x86 platforms.

Is there any plans to add the ability to remove the default TargetPlatformConfiguration?

Thanks,
Raymond




--
Darrell (Daz) DeBoer
Loading...