[Scons-users] .C suffix for c files on POSIX
Dirk Bächle
tshortik at gmx.de
Mon Jan 6 18:40:36 EST 2014
On 05.01.2014 23:43, Carl Cerecke wrote:
> On 20 December 2013 11:37, Dirk Bächle <tshortik at gmx.de> wrote:
>> On 19.12.2013 23:17, Carl Cerecke wrote:
>>> On 19 December 2013 14:46, Dirk Bächle <tshortik at gmx.de> wrote:
>>>> Hi Carl,
>>>>
>>>>
>>>> On 19.12.2013 00:49, Carl Cerecke wrote:
>>>>> How can I tell scons that a .C suffix is for C files, not C++ files on
>>>>> Linux?
>>>>>
>>>>> I've tried env.Append(CFILESUFFIX=['.C']) but it does not work - the
>>>>> files are still recognised as C++.
>>>>
>>>> I think that instead of restricting the suffix list, it'd be easier to
>>>> create an Environment that only loads the C compiler:
>>>>
>>>> ccenv = Environment(tools=['cc','link','ar'])
>>>>
>>>> and use that one to compile your sources.
>>> Thanks, Dirk. Good idea. Except the program is a mix of C and C++.
>>>
>> Then compile the C files with "ccenv" and the C++ files with your "standard"
>> environment...note that you can freely mix and use an arbitrary number of
>> environments, with differently intialized tools and variable/path settings,
>> within your SConstructs/SConscripts.
> Thanks. This works with a bit of fiddling around, including:
>
> ccenv.Append(CCFLAGS='-x c')
>
> gcc sees the .C and assumes C++. The -x c forces c.
>
> (No, I haven't been struggling to do this for two weeks and only just
> figured it out. I've been on holiday... it's summer here)
Nice to see that you made some progress, and thanks for the feedback.
Dirk
More information about the Scons-users
mailing list