Extend test_rc_depends_files test case
Extend test_rc_depends_files test case to also cover depfile generation for a resource file generated by a custom_target
This commit is contained in:
parent
7a15214a69
commit
ac480c1857
|
@ -2393,19 +2393,35 @@ class WindowsTests(BasePlatformTests):
|
|||
|
||||
def test_rc_depends_files(self):
|
||||
testdir = os.path.join(self.platform_test_dir, '5 resources')
|
||||
|
||||
# resource compiler depfile generation is not yet implemented for msvc
|
||||
env = Environment(testdir, self.builddir, get_fake_options(self.prefix), [])
|
||||
depfile_works = env.detect_c_compiler(False).get_id() != 'msvc'
|
||||
|
||||
self.init(testdir)
|
||||
self.build()
|
||||
# Immediately rebuilding should not do anything
|
||||
self.assertBuildIsNoop()
|
||||
# Test compile_resources(depend_file:)
|
||||
# Changing mtime of sample.ico should rebuild prog
|
||||
self.utime(os.path.join(testdir, 'res', 'sample.ico'))
|
||||
self.assertRebuiltTarget('prog')
|
||||
# Test depfile generation by compile_resources
|
||||
# Changing mtime of resource.h should rebuild myres.rc and then prog
|
||||
# (resource compiler depfile generation is not yet implemented for msvc)
|
||||
env = Environment(testdir, self.builddir, get_fake_options(self.prefix), [])
|
||||
if env.detect_c_compiler(False).get_id() != 'msvc':
|
||||
if depfile_works:
|
||||
self.utime(os.path.join(testdir, 'inc', 'resource', 'resource.h'))
|
||||
self.assertRebuiltTarget('prog')
|
||||
self.wipe()
|
||||
|
||||
if depfile_works:
|
||||
testdir = os.path.join(self.platform_test_dir, '13 resources with custom targets')
|
||||
self.init(testdir)
|
||||
self.build()
|
||||
# Immediately rebuilding should not do anything
|
||||
self.assertBuildIsNoop()
|
||||
# Changing mtime of resource.h should rebuild myres_1.rc and then prog_1
|
||||
self.utime(os.path.join(testdir, 'res', 'resource.h'))
|
||||
self.assertRebuiltTarget('prog_1')
|
||||
|
||||
|
||||
class LinuxlikeTests(BasePlatformTests):
|
||||
|
|
|
@ -10,9 +10,10 @@ foreach id : [1, 2]
|
|||
output : 'myres_@0@.rc'.format(id),
|
||||
command : [rc_writer, '@INPUT@', '@OUTPUT@', files('sample.ico')],
|
||||
install : false,
|
||||
build_always : true)
|
||||
build_always : false)
|
||||
endforeach
|
||||
|
||||
rc_sources += files('myres_static.rc')
|
||||
|
||||
res = win.compile_resources(rc_sources)
|
||||
res = win.compile_resources(rc_sources,
|
||||
include_directories: include_directories('.'))
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
#include<windows.h>
|
||||
#include<resource.h>
|
||||
|
||||
1 ICON "{icon}"
|
||||
|
|
Loading…
Reference in New Issue