From 74492eb925140816ef4f928f85de1b0b8bc8e09f Mon Sep 17 00:00:00 2001 From: anatoly techtonik Date: Tue, 29 Apr 2014 01:16:58 +0300 Subject: Remove RPM and m4 from default tools on Windows to speed up SCons start. Note that BitKeeper, CVS, Perforce, RCS, SCCS will be removed from default tools on all platforms in future. --- src/CHANGES.txt | 5 +++++ src/engine/SCons/Tool/__init__.py | 6 ++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/CHANGES.txt b/src/CHANGES.txt index d11fd70..105269c 100644 --- a/src/CHANGES.txt +++ b/src/CHANGES.txt @@ -35,6 +35,11 @@ RELEASE 2.3.2.alpha.yyyymmdd - NEW DATE WILL BE INSERTED HERE that were failing because of this extra line in the output * error message when SCons import fails now lists lookup paths - Remove support for QMTest harness from runtest.py + - Remove RPM and m4 from default tools on Windows + - BitKeeper, CVS, Perforce, RCS, SCCS are deprecated from default + tools and will be removed in future SCons versions to speed up + SCons initialization (it will still be possible to use these tools + explicitly) From Dirk Baechle: - Update XML doc editor configuration diff --git a/src/engine/SCons/Tool/__init__.py b/src/engine/SCons/Tool/__init__.py index 31e3d96..55eb1d3 100644 --- a/src/engine/SCons/Tool/__init__.py +++ b/src/engine/SCons/Tool/__init__.py @@ -772,6 +772,9 @@ def tool_list(platform, env): fortran_compilers = ['gfortran', 'g77', 'ifort', 'ifl', 'f95', 'f90', 'f77'] ars = ['ar', 'mslib'] + if not str(platform) == 'win32': + other_plat_tools += ['m4', 'rpm'] + c_compiler = FindTool(c_compilers, env) or c_compilers[0] # XXX this logic about what tool provides what should somehow be @@ -802,7 +805,6 @@ def tool_list(platform, env): #TODO: merge 'install' into 'filesystem' and # make 'filesystem' the default 'filesystem', - 'm4', 'wix', #'midl', 'msvs', # Parser generators 'lex', 'yacc', @@ -814,7 +816,7 @@ def tool_list(platform, env): 'dvipdf', 'dvips', 'gs', 'tex', 'latex', 'pdflatex', 'pdftex', # Archivers - 'tar', 'zip', 'rpm', + 'tar', 'zip', # SourceCode factories 'BitKeeper', 'CVS', 'Perforce', 'RCS', 'SCCS', # 'Subversion', -- cgit v0.12 From 0c7150306a7077b6d483ebbfd6de2af73e05e1f1 Mon Sep 17 00:00:00 2001 From: Dirk Baechle <7462537+dirkbaechle@users.noreply.github.com> Date: Sun, 18 May 2014 17:47:30 +0200 Subject: - adding test for issue #2311, which appears to be fixed already --- test/path-change.py | 77 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 test/path-change.py diff --git a/test/path-change.py b/test/path-change.py new file mode 100644 index 0000000..0ca070f --- /dev/null +++ b/test/path-change.py @@ -0,0 +1,77 @@ +#!/usr/bin/env python +# +# __COPYRIGHT__ +# +# Permission is hereby granted, free of charge, to any person obtaining +# a copy of this software and associated documentation files (the +# "Software"), to deal in the Software without restriction, including +# without limitation the rights to use, copy, modify, merge, publish, +# distribute, sublicense, and/or sell copies of the Software, and to +# permit persons to whom the Software is furnished to do so, subject to +# the following conditions: +# +# The above copyright notice and this permission notice shall be included +# in all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +# KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE +# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +# + +__revision__ = "__FILE__ __REVISION__ __DATE__ __DEVELOPER__" + +""" +Make sure that changing the location - but not the name - of a +source file triggers a rebuild (issue #2311). +""" + +import TestSCons + +test = TestSCons.TestSCons() + +test.subdir('src1') +test.subdir('src2') + +test.write('SConstruct', """ + +vars = Variables() +vars.AddVariables( + PathVariable('SRCDIR', 'name the subdir to take the sources from', 'src1')) +env = Environment(variables = vars) +Export('env') + +env.Object(target='hello.o', source=['$SRCDIR/hello.c']) +env.Program(target = 'hello', source = ['hello.o']) +""") + +hello_text=r""" + +#include +#include +int +main() +{ + printf("%s\n"); + exit (0); +} + +""" + +test.write('src1/hello.c', hello_text % 'src1/hello') +test.write('src2/hello.c', hello_text % 'src2/hello') + +test.not_up_to_date(options='SRCDIR=src1') +test.up_to_date(options='SRCDIR=src1') +test.not_up_to_date(options='SRCDIR=src2') + +test.pass_test() + +# Local Variables: +# tab-width:4 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=4 shiftwidth=4: -- cgit v0.12