statipattrules

来自「Linux 下的编译工具」· 代码 · 共 112 行

TXT
112
字号
#                                                                    -*-perl-*-$description = "Test handling of static pattern rules.";$details = "\The makefile created in this test has three targets.  Thefilter command is used to get those target names ending in.o and statically creates a compile command with the targetname and the target name with .c.  It also does the same thingfor another target filtered with .elc and creates a commandto emacs a .el file";&touch('bar.c', 'lose.c');#   TEST #0#   -------run_make_test('files = foo.elc bar.o lose.o$(filter %.o,$(files)): %.o: %.c ; @echo CC -c $(CFLAGS) $< -o $@$(filter %.elc,$(files)): %.elc: %.el ; @echo emacs $<',              '',              'CC -c bar.c -o bar.o');#  TEST #1#  -------run_make_test(undef, 'lose.o', 'CC -c lose.c -o lose.o');#   TEST #2#   -------&touch("foo.el");run_make_test(undef, 'foo.elc', 'emacs foo.el');# Clean up after the first tests.unlink('foo.el', 'bar.c', 'lose.c');# TEST #3 -- PR/1670: don't core dump on invalid static pattern rules# -------run_make_test('.DEFAULT: ; @echo $@foo: foo%: % %.x % % % y.% % ; @echo $@',              '', ".x\ny.\nfoo");# TEST #4 -- bug #12180: core dump on a stat pattern rule with an empty#                        prerequisite list.run_make_test('foo.x bar.x: %.x : ; @echo $@',              '', 'foo.x');# TEST #5 -- bug #13881: double colon static pattern rule does not#                        substitute %.run_make_test('foo.bar:: %.bar: %.bazfoo.baz: ;@:',              '', '');# TEST #6: make sure the second stem does not overwrite the first#          perprerequisite's stem (Savannah bug #16053).#run_make_test('all.foo.bar: %.foo.bar: %.oneall.foo.bar: %.bar: %.twoall.foo.bar:	@echo $*	@echo $^.DEFAULT:;@:','','all.fooall.one all.foo.two');# TEST #7: make sure the second stem does not overwrite the first#          perprerequisite's stem when second expansion is enabled#          (Savannah bug #16053).#run_make_test('.SECONDEXPANSION:all.foo.bar: %.foo.bar: %.one $$*-oneall.foo.bar: %.bar: %.two $$*-twoall.foo.bar:	@echo $*	@echo $^.DEFAULT:;@:','','all.fooall.one all-one all.foo.two all.foo-two');1;

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?