Re: [Scons-users] SCons 4.0.0 Released
Gary Oberbrunner <[email protected]> Sat, 4 Jul 2020 22:33:49 -0400
| Newsgroups | gmane.comp.programming.tools.scons.devel |
|---|---|
| Message-ID | <CAFChFyiPSpbajrEtBsgNdqVahenTZDCGiT5579_H_BNbvDSCAw@mail.gmail.com> |
--===============0869608846975824299==
Content-Type: multipart/alternative; boundary="00000000000029f8e805a9a8975d"
--00000000000029f8e805a9a8975d
Content-Type: text/plain; charset="UTF-8"
Congratulations! SCons 4.0!!!
On Sat, Jul 4, 2020 at 6:57 PM Bill Deegan <bill-cJFiu+DHMVC5azolltMz9laTQe2KTcn/@public.gmane.org>
wrote:
> A new SCons release, 4.0.0, is now available
> on the SCons download page:
>
> https://scons.org/pages/download.html
>
> Here is a summary of the changes since 3.1.2:
>
> NEW FUNCTIONALITY
>
> - Added support for scanning multiple entries in an action string if
> IMPLICIT_COMMAND_DEPENDENCIES is set to 2 or 'all'. This enables
> more thorough
> action scanning where every item in each command line is scanned to
> determine
> if it is a non-source and non-target path and added to the list of
> implicit dependencies
> for the target.
> - Added new module SCons.Scanner.Python to allow scanning .py files.
> - Added support for explicitly passing a name when creating Value()
> nodes. This may be useful
> when the value can't be converted to a string or if having a name is
> otherwise desirable.
> - Added a new flag called "linedraw" for the command line argument
> "--tree"
> that instructs scons to use single line drawing characters to draw
> the dependency tree.
> - Add CompilationDatabase() builder in compilation_db tool.
> Contributed by MongoDB.
> Setting COMPILATIONDB_USE_ABSPATH to True|False controls whether the
> files are absolute or relative
> paths. Address Issue #3693 and #3694 found during development.
> - Extended `Environment.Dump()` to select a format to serialize
> construction variables (pretty, json).
> - New conditional C Scanner (`SCons.Scanner.C.CConditionalScanner()`)
> which interprets C/C Preprocessor conditional syntax (#ifdef, #if,
> #else,
> #elif, #define, etc.)
> - Experimental New Feature: Enable caching MSVC configuration
> If SCONS_CACHE_MSVC_CONFIG shell environment variable is set,
> SCons will cache the results of past calls to vcvarsall.bat to
> a file; integrates with existing memoizing of such vars.
> - Preliminary Python 3.9 support.
>
> DEPRECATED FUNCTIONALITY
>
> - Drop support for Python 2.7. SCons will be Python 3.5+ going forward.
> - Remove deprecated SourceCode()
>
> CHANGED/ENHANCED EXISTING FUNCTIONALITY
>
> - Added check for SONAME in environment to setup symlinks correctly
> (Github Issue #3246)
> - Resolve Issue #3248 - Removing '-Wl,-Bsymbolic' from
> SHLIBVERSIONFLAGS
> NOTE: If your build depends on the above you must now add to your
> SHLIBVERSIONFLAGS
> - Microsoft Visual Studio - switch to using uuid module to generate
> GUIDs rather than hand rolled
> method using md5 directly.
> NOTE: This change affects the following builders' output. If your
> build depends on the output of these builders
> you will likely see a rebuild.
> * Package() (with PACKAGETYPE='msi')
> * MSVSSolution()
> * MSVSProject()
> - Improve Visual Studio solution/project generation code to add support
> for a per-variant cppflags. Intellisense can be affected by cppflags,
> this is especially important when it comes to /std:c++* which
> specifies
> what C++ standard version to target. SCons will append
> /Zc:__cplusplus
> to the project's cppflags when a /std:c++* flag is found as this is
> required for intellisense to use the C++ standard version from
> cppflags.
> - Allow user specified location for vswhere.exe specified by VSWHERE.
> NOTE: This must be set at the time the 'msvc' 'msvs' and/or 'mslink'
> tool(s) are initialized to have any effect.
> - Fixed Github Issue 3628 - Hardcoding pickle protocol to 4 (supports
> python 3.4+)
> and skipping Python 3.8's new pickle protocol 5 whose main advantage
> is for out-of-band data buffers.
> NOTE: If you used Python 3.8 with SCons 3.0.0 or above, you may get
> a a pickle protocol error. Remove your
> .sconsign.dblite. You will end up with a full rebuild.
> - MSVC updates: When there are multiple product installations (e.g,
> Community and
> Build Tools) of MSVC 2017 or MSVC 2019, an Enterprise, Professional,
> or Community installation will be selected before a Build Tools
> installation when
> "14.1" or "14.2" is requested, respectively. (GH Issue #3699).
> - MSVC updates: When there are multiple product installations of MSVC
> 2017 (e.g.,
> Community and Express), 2017 Express is no longer returned when
> "14.1" is
> requested. Only 2017 Express will be returned when "14.1Exp" is
> requested.
> (GH Issue #3699).
> - MSVC updates: pass on VSCMD_DEBUG and VSCMD_SKIP_SENDTELEMETRY to
> msvc
> tool setup if set in environment. Add Powershell to default env
> (used to call telemetry script).
> - Renamed as.py to asm.py and left redirecting tool. 'as' is a
> reserved word and so
> changing the name was required as we wanted to import symbols for
> use in compilation_db
> tool.
> - Add no_progress (-Q) option as a set-able option. However, setting
> it in the
> SConstruct/SConscript will still cause "scons: Reading SConscript
> files ..." to be
> printed, since the option is not set when the build scripts first
> get read.
> - Docbook builder provides a fallback if lxml fails to generate
> a document with tostring().
> - SubstitutionEnvironment and OverrideEnvironment now have keys()
> and values() methods to better emulate a dict (already had items()).
>
> FIXES
>
> - Cleanup dangling symlinks before running builders (Issue #3516)
> - Fixed usage of abspath and path for RootDir objects on Windows.
> Previously
> env.fs.Dir("T:").abspath would return "T:\T:" and now it correctly
> returns "T:".
> - Fix Issue #3469 - Fixed improper reuse of temporary and compiled
> files by Configure when changing
> the order and/or number of tests. This is done by using the hash of
> the generated temporary files
> content and (For the target files) the hash of the action.
> So where previously files would be named:
> - config_1.c, config_1.o, config_1
> The will now be named (For example)
> - conftest_68b375d16e812c43e6d72d6e93401e7c_0.c,
>
> conftest_68b375d16e812c43e6d72d6e93401e7c_0_5713f09fc605f46b2ab2f7950455f187.o
> or
> conftest_68b375d16e812c43e6d72d6e93401e7c_0.o
>
> conftest_68b375d16e812c43e6d72d6e93401e7c_0_5713f09fc605f46b2ab2f7950455f187
> (for executable)
> - Updated documentation toolchain to work properly under Python3, also
> removed libxslt support from the Docbook Tool. (issue #3580)
> - Fix broken clang + MSVC 2019 combination by using MSVC configuration
> logic to
> propagate 'VCINSTALLDIR' and 'VCToolsInstallDir' which clang tools
> use to locate
> header files and libraries from MSVC install. (Fixes GH Issue #3480)
> - Fix Github Issue #2904 - Provide useful error message when more than
> one Configure Contexts are opened.
> Only one open is allowed. You must call conf.Finish() to complete
> the currently open one before creating another
>
> IMPROVEMENTS
>
> - Improve performance of Subst by preventing unnecessary frame
> allocations by no longer defining the *Subber classes inside of their
> respective function calls.
> - Improve performance of Subst in some cases by preventing
> unnecessary calls to eval when a token is surrounded in braces
> but is not a function call.
> - Improve performance of subst by removing unnecessary recursion.
>
> PACKAGING
>
> - Resolve Issue #3451 and Issue #3450 - Rewrite SCons setup.py and
> packaging. Move script logic to entry points so
> package can create scripts which use the correct version of Python.
>
> DOCUMENTATION
>
> - Significant rework of documentation: API docs are now generated
> using Sphinx; manpage and user guide now use more "standard"
> markup elements (which could facilitate later conversion to a
> different doc format, should that choice be made); significant
> rewordings in manpage. Manpage Examples moved to an external
> repository / website (scons-cookbook.readthedocs.io).
>
> Thanks to the following contributors listed below for their
> contributions to this release.
>
> git shortlog --no-merges -ns 3.1.2..HEAD
> 290 William Deegan
> 184 Mats Wichmann
> 46 Adam Gross
> 22 Daniel Moody
> 16 Joseph Brill
> 15 Dirk Baechle
> 12 Ivan Kravets
> 9 Mathew Robinson
> 6 Paul Tipei
> 1 Rob Boehne
> 1 Robert Boehne
> 1 Daniel
> 1 Andrew Morrow
> 1 Iosif Daniel Kurazs
> 1 James Benton
> 1 Jeremy Elson
> 1 Konstantin Gonchar
> 1 Andrii Doroshenko (Xrayez)
> _______________________________________________
> Scons-users mailing list
> [email protected]
> https://pairlist4.pair.net/mailman/listinfo/scons-users
>
--
Gary
--00000000000029f8e805a9a8975d
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr">Congratulations! SCons 4.0!!!</div><br><div class=3D"gmail=
_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Sat, Jul 4, 2020 at 6:57 P=
M Bill Deegan <<a href=3D"mailto:bill-cJFiu+DHMVC5azolltMz9laTQe2KTcn/@public.gmane.org">bill@baddogc=
onsulting.com</a>> wrote:<br></div><blockquote class=3D"gmail_quote" sty=
le=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);paddi=
ng-left:1ex"><div dir=3D"ltr">=C2=A0 A new SCons release, 4.0.0, is now ava=
ilable<br>=C2=A0 on the SCons download page:<br><br>=C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 <a href=3D"https://scons.org/pages/download.html" target=3D"_=
blank">https://scons.org/pages/download.html</a><br><br>=C2=A0 Here is a su=
mmary of the changes since 3.1.2:<br><br>=C2=A0 NEW FUNCTIONALITY<br><br>=
=C2=A0 =C2=A0 - Added support for scanning multiple entries in an action st=
ring if<br>=C2=A0 =C2=A0 =C2=A0 IMPLICIT_COMMAND_DEPENDENCIES is set to 2 o=
r 'all'. This enables more thorough<br>=C2=A0 =C2=A0 =C2=A0 action =
scanning where every item in each command line is scanned to determine<br>=
=C2=A0 =C2=A0 =C2=A0 if it is a non-source and non-target path and added to=
the list of implicit dependencies<br>=C2=A0 =C2=A0 =C2=A0 for the target.<=
br>=C2=A0 =C2=A0 - Added new module SCons.Scanner.Python to allow scanning =
.py files.<br>=C2=A0 =C2=A0 - Added support for explicitly passing a name w=
hen creating Value() nodes. This may be useful<br>=C2=A0 =C2=A0 =C2=A0 when=
the value can't be converted to a string or if having a name is otherw=
ise desirable.<br>=C2=A0 =C2=A0 - Added a new flag called "linedraw&qu=
ot; for the command line argument =C2=A0"--tree"<br>=C2=A0 =C2=A0=
=C2=A0 that instructs scons to use single line drawing characters to draw =
the dependency tree.<br>=C2=A0 =C2=A0 - Add CompilationDatabase() builder i=
n compilation_db tool. Contributed by MongoDB.<br>=C2=A0 =C2=A0 =C2=A0 Sett=
ing COMPILATIONDB_USE_ABSPATH to True|False controls whether the files are =
absolute or relative<br>=C2=A0 =C2=A0 =C2=A0 paths.=C2=A0 Address Issue #36=
93 and #3694 found during development.<br>=C2=A0 =C2=A0 - Extended `Environ=
ment.Dump()` to select a format to serialize construction variables (pretty=
, json).<br>=C2=A0 =C2=A0 - New conditional C Scanner (`SCons.Scanner.C.CCo=
nditionalScanner()`)<br>=C2=A0 =C2=A0 =C2=A0 which interprets C/C Preproces=
sor conditional syntax (#ifdef, #if, #else,<br>=C2=A0 =C2=A0 =C2=A0 #elif, =
#define, etc.)<br>=C2=A0 =C2=A0 - Experimental New Feature: Enable caching =
MSVC configuration<br>=C2=A0 =C2=A0 =C2=A0 If SCONS_CACHE_MSVC_CONFIG shell=
environment variable is set,<br>=C2=A0 =C2=A0 =C2=A0 SCons will cache the =
results of past calls to vcvarsall.bat to<br>=C2=A0 =C2=A0 =C2=A0 a file; i=
ntegrates with existing memoizing of such vars.<br>=C2=A0 =C2=A0 - Prelimin=
ary Python 3.9 support.<br><br>=C2=A0 DEPRECATED FUNCTIONALITY<br><br>=C2=
=A0 =C2=A0 - Drop support for Python 2.7. SCons will be Python 3.5+ going f=
orward.<br>=C2=A0 =C2=A0 - Remove deprecated SourceCode()<br><br>=C2=A0 CHA=
NGED/ENHANCED EXISTING FUNCTIONALITY<br><br>=C2=A0 =C2=A0 - Added check for=
SONAME in environment to setup symlinks correctly (Github Issue #3246)<br>=
=C2=A0 =C2=A0 - Resolve Issue #3248 - Removing '-Wl,-Bsymbolic' fro=
m SHLIBVERSIONFLAGS<br>=C2=A0 =C2=A0 =C2=A0 NOTE: If your build depends on =
the above you must now add to your SHLIBVERSIONFLAGS<br>=C2=A0 =C2=A0 - Mic=
rosoft Visual Studio - switch to using uuid module to generate GUIDs rather=
than hand rolled<br>=C2=A0 =C2=A0 =C2=A0 method using md5 directly.<br>=C2=
=A0 =C2=A0 =C2=A0 NOTE: This change affects the following builders' out=
put. If your build depends on the output of these builders<br>=C2=A0 =C2=A0=
=C2=A0 you will likely see a rebuild.<br>=C2=A0 =C2=A0 =C2=A0 * Package() =
(with PACKAGETYPE=3D'msi')<br>=C2=A0 =C2=A0 =C2=A0 * MSVSSolution()=
<br>=C2=A0 =C2=A0 =C2=A0 * MSVSProject()<br>=C2=A0 =C2=A0 - Improve Visual =
Studio solution/project generation code to add support<br>=C2=A0 =C2=A0 =C2=
=A0 for a per-variant cppflags. Intellisense can be affected by cppflags,<b=
r>=C2=A0 =C2=A0 =C2=A0 this is especially important when it comes to /std:c=
++* which specifies<br>=C2=A0 =C2=A0 =C2=A0 what C++ standard version to ta=
rget. SCons will append /Zc:__cplusplus<br>=C2=A0 =C2=A0 =C2=A0 to the proj=
ect's cppflags when a /std:c++* flag is found as this is<br>=C2=A0 =C2=
=A0 =C2=A0 required for intellisense to use the C++ standard version from c=
ppflags.<br>=C2=A0 =C2=A0 - Allow user specified location for vswhere.exe s=
pecified by VSWHERE.<br>=C2=A0 =C2=A0 =C2=A0 NOTE: This must be set at the =
time the 'msvc' 'msvs' and/or 'mslink' tool(s) are =
initialized to have any effect.<br>=C2=A0 =C2=A0 - Fixed Github Issue 3628 =
- Hardcoding pickle protocol to 4 (supports python 3.4+)<br>=C2=A0 =C2=A0 =
=C2=A0 and skipping Python 3.8's new pickle protocol 5 whose main advan=
tage is for out-of-band data buffers.<br>=C2=A0 =C2=A0 =C2=A0 NOTE: If you =
used Python 3.8 with SCons 3.0.0 or above, you may get a a pickle protocol =
error. Remove your<br>=C2=A0 =C2=A0 =C2=A0 .sconsign.dblite. You will end u=
p with a full rebuild.<br>=C2=A0 =C2=A0 - MSVC updates: When there are mult=
iple product installations (e.g, Community and<br>=C2=A0 =C2=A0 =C2=A0 Buil=
d Tools) of MSVC 2017 or MSVC 2019, an Enterprise, Professional,<br>=C2=A0 =
=C2=A0 =C2=A0 or Community installation will be selected before a Build Too=
ls installation when<br>=C2=A0 =C2=A0 =C2=A0 "14.1" or "14.2=
" is requested, respectively. (GH Issue #3699).<br>=C2=A0 =C2=A0 - MSV=
C updates: When there are multiple product installations of MSVC 2017 (e.g.=
,<br>=C2=A0 =C2=A0 =C2=A0 Community and Express), 2017 Express is no longer=
returned when "14.1" is<br>=C2=A0 =C2=A0 =C2=A0 requested.=C2=A0=
Only 2017 Express will be returned when "14.1Exp" is requested.<=
br>=C2=A0 =C2=A0 =C2=A0 (GH Issue #3699).<br>=C2=A0 =C2=A0 - MSVC updates: =
pass on VSCMD_DEBUG and VSCMD_SKIP_SENDTELEMETRY to msvc<br>=C2=A0 =C2=A0 =
=C2=A0 tool setup if set in environment. Add Powershell to default env<br>=
=C2=A0 =C2=A0 =C2=A0 (used to call telemetry script).<br>=C2=A0 =C2=A0 - Re=
named as.py to asm.py and left redirecting tool. =C2=A0'as' is a re=
served word and so<br>=C2=A0 =C2=A0 =C2=A0 changing the name was required a=
s we wanted to import symbols for use in compilation_db<br>=C2=A0 =C2=A0 =
=C2=A0 tool.<br>=C2=A0 =C2=A0 - Add no_progress (-Q) option as a set-able o=
ption. However, setting it in the<br>=C2=A0 =C2=A0 =C2=A0 SConstruct/SConsc=
ript will still cause "scons: Reading SConscript files ..." to be=
<br>=C2=A0 =C2=A0 =C2=A0 printed, since the option is not set when the buil=
d scripts first get read.<br>=C2=A0 =C2=A0 - Docbook builder provides a fal=
lback if lxml fails to generate<br>=C2=A0 =C2=A0 =C2=A0 a document with tos=
tring().<br>=C2=A0 =C2=A0 - SubstitutionEnvironment and OverrideEnvironment=
now have keys()<br>=C2=A0 =C2=A0 =C2=A0 and values() methods to better emu=
late a dict (already had items()).<br><br>=C2=A0 FIXES<br><br>=C2=A0 =C2=A0=
- Cleanup dangling symlinks before running builders (Issue #3516)<br>=C2=
=A0 =C2=A0 - Fixed usage of abspath and path for RootDir objects on Windows=
. Previously<br>=C2=A0 =C2=A0 =C2=A0 env.fs.Dir("T:").abspath wou=
ld return "T:\T:" and now it correctly returns "T:".<br=
>=C2=A0 =C2=A0 - Fix Issue #3469 - Fixed improper reuse of temporary and co=
mpiled files by Configure when changing<br>=C2=A0 =C2=A0 =C2=A0 the order a=
nd/or number of tests.=C2=A0 This is done by using the hash of the generate=
d temporary files<br>=C2=A0 =C2=A0 =C2=A0 content and (For the target files=
) the hash of the action.<br>=C2=A0 =C2=A0 =C2=A0 So where previously files=
would be named:<br>=C2=A0 =C2=A0 =C2=A0 - config_1.c, config_1.o, config_1=
<br>=C2=A0 =C2=A0 =C2=A0 The will now be named (For example)<br>=C2=A0 =C2=
=A0 =C2=A0 - conftest_68b375d16e812c43e6d72d6e93401e7c_0.c,<br>=C2=A0 =C2=
=A0 =C2=A0 =C2=A0 conftest_68b375d16e812c43e6d72d6e93401e7c_0_5713f09fc605f=
46b2ab2f7950455f187.o<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 or<br>=C2=A0 =C2=A0 =
=C2=A0 =C2=A0 conftest_68b375d16e812c43e6d72d6e93401e7c_0.o<br>=C2=A0 =C2=
=A0 =C2=A0 =C2=A0 conftest_68b375d16e812c43e6d72d6e93401e7c_0_5713f09fc605f=
46b2ab2f7950455f187 (for executable)<br>=C2=A0 =C2=A0 - Updated documentati=
on toolchain to work properly under Python3, also<br>=C2=A0 =C2=A0 =C2=A0 r=
emoved libxslt support from the Docbook Tool. (issue #3580)<br>=C2=A0 =C2=
=A0 - Fix broken clang + MSVC 2019 combination by using MSVC configuration =
logic to<br>=C2=A0 =C2=A0 =C2=A0 propagate 'VCINSTALLDIR' and '=
VCToolsInstallDir' which clang tools use to locate<br>=C2=A0 =C2=A0 =C2=
=A0 header files and libraries from MSVC install. (Fixes GH Issue #3480)<br=
>=C2=A0 =C2=A0 - Fix Github Issue #2904 - Provide useful error message when=
more than one Configure Contexts are opened.<br>=C2=A0 =C2=A0 =C2=A0 Only =
one open is allowed. You must call conf.Finish() to complete the currently =
open one before creating another<br><br>=C2=A0 IMPROVEMENTS<br><br>=C2=A0 =
=C2=A0 - Improve performance of Subst by preventing unnecessary frame<br>=
=C2=A0 =C2=A0 =C2=A0 allocations by no longer defining the *Subber classes =
inside of their<br>=C2=A0 =C2=A0 =C2=A0 respective function calls.<br>=C2=
=A0 =C2=A0 - Improve performance of Subst in some cases by preventing<br>=
=C2=A0 =C2=A0 =C2=A0 unnecessary calls to eval when a token is surrounded i=
n braces<br>=C2=A0 =C2=A0 =C2=A0 but is not a function call.<br>=C2=A0 =C2=
=A0 - Improve performance of subst by removing unnecessary recursion.<br><b=
r>=C2=A0 PACKAGING<br><br>=C2=A0 =C2=A0 - Resolve Issue #3451 and Issue #34=
50 - Rewrite SCons setup.py and packaging. Move script logic to entry point=
s so<br>=C2=A0 =C2=A0 =C2=A0 package can create scripts which use the corre=
ct version of Python.<br><br>=C2=A0 DOCUMENTATION<br><br>=C2=A0 =C2=A0 - Si=
gnificant rework of documentation: API docs are now generated<br>=C2=A0 =C2=
=A0 =C2=A0 using Sphinx; manpage and user guide now use more "standard=
"<br>=C2=A0 =C2=A0 =C2=A0 markup elements (which could facilitate late=
r conversion to a<br>=C2=A0 =C2=A0 =C2=A0 different doc format, should that=
choice be made); significant<br>=C2=A0 =C2=A0 =C2=A0 rewordings in manpage=
.=C2=A0 Manpage Examples moved to an external<br>=C2=A0 =C2=A0 =C2=A0 repos=
itory / website (<a href=3D"http://scons-cookbook.readthedocs.io" target=3D=
"_blank">scons-cookbook.readthedocs.io</a>).<br><br>=C2=A0 Thanks to the fo=
llowing contributors listed below for their contributions to this release.<=
br><br>git shortlog --no-merges -ns 3.1.2..HEAD<br>=C2=A0 =C2=A0290 =C2=A0W=
illiam Deegan<br>=C2=A0 =C2=A0184 =C2=A0Mats Wichmann<br>=C2=A0 =C2=A0 46 =
=C2=A0Adam Gross<br>=C2=A0 =C2=A0 22 =C2=A0Daniel Moody<br>=C2=A0 =C2=A0 16=
=C2=A0Joseph Brill<br>=C2=A0 =C2=A0 15 =C2=A0Dirk Baechle<br>=C2=A0 =C2=A0=
12 =C2=A0Ivan Kravets<br>=C2=A0 =C2=A0 =C2=A09 =C2=A0Mathew Robinson<br>=
=C2=A0 =C2=A0 =C2=A06 =C2=A0Paul Tipei<br>=C2=A0 =C2=A0 =C2=A01 =C2=A0Rob B=
oehne<br>=C2=A0 =C2=A0 =C2=A01 =C2=A0Robert Boehne<br>=C2=A0 =C2=A0 =C2=A01=
=C2=A0Daniel<br>=C2=A0 =C2=A0 =C2=A01 =C2=A0Andrew Morrow<br>=C2=A0 =C2=A0=
=C2=A01 =C2=A0Iosif Daniel Kurazs<br>=C2=A0 =C2=A0 =C2=A01 =C2=A0James Ben=
ton<br>=C2=A0 =C2=A0 =C2=A01 =C2=A0Jeremy Elson<br>=C2=A0 =C2=A0 =C2=A01 =
=C2=A0Konstantin Gonchar<br>=C2=A0 =C2=A0 =C2=A01 =C2=A0Andrii Doroshenko (=
Xrayez)</div>
_______________________________________________<br>
Scons-users mailing list<br>
<a href=3D"mailto:[email protected]" target=3D"_blank">Scons-users@scon=
s.org</a><br>
<a href=3D"https://pairlist4.pair.net/mailman/listinfo/scons-users" rel=3D"=
noreferrer" target=3D"_blank">https://pairlist4.pair.net/mailman/listinfo/s=
cons-users</a><br>
</blockquote></div><br clear=3D"all"><div><br></div>-- <br><div dir=3D"ltr"=
class=3D"gmail_signature"><div dir=3D"ltr"><div>Gary</div></div></div>
--00000000000029f8e805a9a8975d--
--===============0869608846975824299==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
_______________________________________________
Scons-dev mailing list
[email protected]
https://pairlist2.pair.net/mailman/listinfo/scons-dev
--===============0869608846975824299==--