fix typo
[scons.git] / test / QT / empty-env.py
blobe9dfc81b1e0f63430db04e8855dc7d4804b2babb
1 #!/usr/bin/env python
3 # MIT License
5 # Copyright The SCons Foundation
7 # Permission is hereby granted, free of charge, to any person obtaining
8 # a copy of this software and associated documentation files (the
9 # "Software"), to deal in the Software without restriction, including
10 # without limitation the rights to use, copy, modify, merge, publish,
11 # distribute, sublicense, and/or sell copies of the Software, and to
12 # permit persons to whom the Software is furnished to do so, subject to
13 # the following conditions:
15 # The above copyright notice and this permission notice shall be included
16 # in all copies or substantial portions of the Software.
18 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
19 # KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
20 # WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
21 # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
22 # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
23 # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
24 # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
26 """
27 Test Qt creation from a copied empty environment.
28 """
30 import TestSCons
32 test = TestSCons.TestSCons()
34 test.Qt_dummy_installation('qt')
36 test.write('SConstruct', """\
37 orig = Environment()
38 env = orig.Clone(QTDIR = r'%s',
39 QT_LIB = r'%s',
40 QT_MOC = r'%s',
41 QT_UIC = r'%s',
42 tools=['qt'])
43 env.Program('main', 'main.cpp', CPPDEFINES=['FOO'], LIBS=[])
44 """ % (test.QT, test.QT_LIB, test.QT_MOC, test.QT_UIC))
46 test.write('main.cpp', r"""
47 #include "foo6.h"
48 int main(void) { foo6(); return 0; }
49 """)
51 test.write(['qt', 'include', 'foo6.h'], """\
52 #include <stdio.h>
53 void
54 foo6(void)
56 #ifdef FOO
57 printf("qt/include/foo6.h\\n");
58 #endif
60 """)
62 # we can receive warnings about a non detected qt (empty QTDIR)
63 # these are not critical, but may be annoying.
64 test.run(stderr=None, arguments='--warn=no-tool-qt-deprecated')
66 test.run(
67 program=test.workpath('main' + TestSCons._exe),
68 arguments='--warn=no-tool-qt-deprecated',
69 stderr=None,
70 stdout='qt/include/foo6.h\n',
73 test.pass_test()
75 # Local Variables:
76 # tab-width:4
77 # indent-tabs-mode:nil
78 # End:
79 # vim: set expandtab tabstop=4 shiftwidth=4: