diff options
Diffstat (limited to 'media/webrtc/trunk/tools/gyp/test/linux/ldflags-duplicates')
5 files changed, 89 insertions, 0 deletions
diff --git a/media/webrtc/trunk/tools/gyp/test/linux/ldflags-duplicates/check-ldflags.py b/media/webrtc/trunk/tools/gyp/test/linux/ldflags-duplicates/check-ldflags.py new file mode 100755 index 000000000..0515da95e --- /dev/null +++ b/media/webrtc/trunk/tools/gyp/test/linux/ldflags-duplicates/check-ldflags.py @@ -0,0 +1,25 @@ +#!/usr/bin/env python + +# Copyright (c) 2015 Google Inc. All rights reserved. +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. + +""" +Verifies duplicate ldflags are not removed. +""" + +import sys + +def CheckContainsFlags(args, substring): + if args.find(substring) is -1: + print 'ERROR: Linker arguments "%s" are missing in "%s"' % (substring, args) + return False; + return True; + +if __name__ == '__main__': + args = " ".join(sys.argv) + print "args = " +args + if not CheckContainsFlags(args, 'lib1.a -Wl,--no-whole-archive') \ + or not CheckContainsFlags(args, 'lib2.a -Wl,--no-whole-archive'): + sys.exit(1); + sys.exit(0) diff --git a/media/webrtc/trunk/tools/gyp/test/linux/ldflags-duplicates/lib1.c b/media/webrtc/trunk/tools/gyp/test/linux/ldflags-duplicates/lib1.c new file mode 100644 index 000000000..a1322e739 --- /dev/null +++ b/media/webrtc/trunk/tools/gyp/test/linux/ldflags-duplicates/lib1.c @@ -0,0 +1,6 @@ +// Copyright (c) 2015 Google Inc. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +void foo() { +} diff --git a/media/webrtc/trunk/tools/gyp/test/linux/ldflags-duplicates/lib2.c b/media/webrtc/trunk/tools/gyp/test/linux/ldflags-duplicates/lib2.c new file mode 100644 index 000000000..8e7a08282 --- /dev/null +++ b/media/webrtc/trunk/tools/gyp/test/linux/ldflags-duplicates/lib2.c @@ -0,0 +1,6 @@ +// Copyright (c) 2015 Google Inc. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +void bar() { +} diff --git a/media/webrtc/trunk/tools/gyp/test/linux/ldflags-duplicates/main.c b/media/webrtc/trunk/tools/gyp/test/linux/ldflags-duplicates/main.c new file mode 100644 index 000000000..b3039ace9 --- /dev/null +++ b/media/webrtc/trunk/tools/gyp/test/linux/ldflags-duplicates/main.c @@ -0,0 +1,7 @@ +// Copyright (c) 2015 Google Inc. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +int main() { + return 0; +} diff --git a/media/webrtc/trunk/tools/gyp/test/linux/ldflags-duplicates/test.gyp b/media/webrtc/trunk/tools/gyp/test/linux/ldflags-duplicates/test.gyp new file mode 100644 index 000000000..c36835b18 --- /dev/null +++ b/media/webrtc/trunk/tools/gyp/test/linux/ldflags-duplicates/test.gyp @@ -0,0 +1,45 @@ +# Copyright (c) 2015 Google Inc. All rights reserved. +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. + +{ + 'make_global_settings': [ + ['LINK_wrapper', './check-ldflags.py'], + ], + 'targets': [ + { + 'target_name': 'test', + 'type': 'executable', + 'ldflags': [ + '-Wl,--whole-archive <(PRODUCT_DIR)/lib1.a', + '-Wl,--no-whole-archive', + + '-Wl,--whole-archive <(PRODUCT_DIR)/lib2.a', + '-Wl,--no-whole-archive', + ], + 'dependencies': [ + 'lib1', + 'lib2', + ], + 'sources': [ + 'main.c', + ], + }, + { + 'target_name': 'lib1', + 'type': 'static_library', + 'standalone_static_library': 1, + 'sources': [ + 'lib1.c', + ], + }, + { + 'target_name': 'lib2', + 'type': 'static_library', + 'standalone_static_library': 1, + 'sources': [ + 'lib2.c', + ], + }, + ], +} |