[Scons-users] Cross-OS Cross-Building

Jason Kenny dragon512 at live.com
Thu Aug 11 17:21:00 EDT 2016


Hi,

>> The particular one that prompted the investigation is SHLIBSUFFIX.

So I find that in parts I was setting these in the tools based on Target
platform. I agree SCons should do this better.

>> E.g., one can't write Platform('linux'), but instead has to know that
SCons treats Linux (but not all POSIX OSes) as generic 'posix'.  

I would also agree that would be nice to have in the base. I know in parts
we made a BSD,Android,K1om platform and left posix as linux. However there
are a lot of other system that might trigger on posix that should be more
detailed. I would also like to see that SCons get more detailed on the
platform vs the current posix,Darwin,sunos,win32 that are the current
defaults.


Jason


-----Original Message-----
From: Scons-users [mailto:scons-users-bounces at scons.org] On Behalf Of Fred
Wright
Sent: Thursday, August 11, 2016 3:38 PM
To: SCons users mailing list <scons-users at scons.org>
Subject: Re: [Scons-users] Cross-OS Cross-Building


On Wed, 10 Aug 2016, Jason Kenny wrote:

> I am curious on what variables you view are the issue?

The particular one that prompted the investigation is SHLIBSUFFIX.

On Wed, 10 Aug 2016, Bill Deegan wrote:

> Does using this (from manpage)
> Platform(string)
>
> The Platform form returns a callable object that can be used to 
> initialize a construction environment using the platform keyword of 
> the Environment function.
>
> Example:
>
> env = Environment(platform = Platform('win32'))
[...]

That's sort of what's needed except that the argument is an
*SCons-internal* platform name.  E.g., one can't write Platform('linux'),
but instead has to know that SCons treats Linux (but not all POSIX OSes) as
generic 'posix'.  The problem is that the function that maps the needed
value from the "more public" form of the platform name is tied to os.name
and sys.platform.

It also seems to mix host-related values with target-related values, though
mainly in the area of command paths, which is probably not disastrous to get
wrong.

Ideally it would make a clear distinction between host-related variables and
target-related variables, with a function to set the latter (and only the
latter) based on a well-known form of platform specifier.

Fred Wright
_______________________________________________
Scons-users mailing list
Scons-users at scons.org
https://pairlist4.pair.net/mailman/listinfo/scons-users


More information about the Scons-users mailing list