diff options
Diffstat (limited to 'third_party/python/gyp/test/rules-use-built-dependencies')
3 files changed, 82 insertions, 0 deletions
diff --git a/third_party/python/gyp/test/rules-use-built-dependencies/gyptest-use-built-dependencies.py b/third_party/python/gyp/test/rules-use-built-dependencies/gyptest-use-built-dependencies.py new file mode 100755 index 0000000000..a57c36d5b0 --- /dev/null +++ b/third_party/python/gyp/test/rules-use-built-dependencies/gyptest-use-built-dependencies.py @@ -0,0 +1,23 @@ +#!/usr/bin/env python + +# Copyright (c) 2013 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 that rules which use built dependencies work correctly. +""" + +import TestGyp + +test = TestGyp.TestGyp() + +test.run_gyp('use-built-dependencies-rule.gyp', chdir='src') + +test.relocate('src', 'relocate/src') +test.build('use-built-dependencies-rule.gyp', chdir='relocate/src') + +test.built_file_must_exist('main_output', chdir='relocate/src') +test.built_file_must_match('main_output', 'output', chdir='relocate/src') + +test.pass_test() diff --git a/third_party/python/gyp/test/rules-use-built-dependencies/src/main.cc b/third_party/python/gyp/test/rules-use-built-dependencies/src/main.cc new file mode 100644 index 0000000000..937d284599 --- /dev/null +++ b/third_party/python/gyp/test/rules-use-built-dependencies/src/main.cc @@ -0,0 +1,17 @@ +// Copyright (c) 2013 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. +#include <stdio.h> + +int main(int argc, char *argv[]) { + if (argc < 2) { + return 2; + } + FILE* file; + file = fopen(argv[1], "wb"); + const char output[] = "output"; + fwrite(output, 1, sizeof(output) - 1, file); + fclose(file); + return 0; +} + diff --git a/third_party/python/gyp/test/rules-use-built-dependencies/src/use-built-dependencies-rule.gyp b/third_party/python/gyp/test/rules-use-built-dependencies/src/use-built-dependencies-rule.gyp new file mode 100644 index 0000000000..92bfeda392 --- /dev/null +++ b/third_party/python/gyp/test/rules-use-built-dependencies/src/use-built-dependencies-rule.gyp @@ -0,0 +1,42 @@ +# Copyright (c) 2013 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. + +{ + 'targets': [ + { + 'target_name': 'main', + 'toolsets': ['host'], + 'type': 'executable', + 'sources': [ + 'main.cc', + ], + }, + { + 'target_name': 'post', + 'toolsets': ['host'], + 'type': 'none', + 'dependencies': [ + 'main', + ], + 'sources': [ + # As this test is written it could easily be made into an action. + # An acutal use case would have a number of these 'sources'. + '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)main<(EXECUTABLE_SUFFIX)', + ], + 'rules': [ + { + 'rule_name': 'generate_output', + 'extension': '<(EXECUTABLE_SUFFIX)', + 'outputs': [ '<(RULE_INPUT_DIRNAME)/<(RULE_INPUT_ROOT)_output', ], + 'msvs_cygwin_shell': 0, + 'action': [ + '<(RULE_INPUT_PATH)', + '<(RULE_INPUT_DIRNAME)/<(RULE_INPUT_ROOT)_output', + ], + 'message': 'Generating output for <(RULE_INPUT_ROOT)' + }, + ], + }, + ], +} |