linux – 如果补丁跳过补丁,如何不破坏makefile?

linux – 如果补丁跳过补丁,如何不破坏makefile?,第1张

概述我想在makefile中应用补丁.如果尚未应用补丁,则此工作正常.但是,如果我尝试在原始文件已经修补之后进行修改,则会导致makefile在完成之前退出. Makefile – all: echo "starting patch" patch -N < patchfiles/foo.patch echo "patched" 在文件已经修补后尝试运行后 我想在makefile中应用补丁.如果尚未应用补丁,则此工作正常.但是,如果我尝试在原始文件已经修补之后进行修改,则会导致makefile在完成之前退出.

Makefile –

all:        echo "starting patch"        patch -N < patchfiles/foo.patch        echo "patched"

在文件已经修补后尝试运行后的结果 –

usr-mbp:makefile usr$makeecho "starting patch"starting patchpatch -N < patchfiles/foo.patchpatching file fooReversed (or prevIoUsly applIEd) patch detected!  SkipPing patch.1 out of 1 hunk ignored -- saving rejects to file foo.rejmake: *** [all] Error 1

我认为使用-N选项只会跳过补丁而不会导致任何错误.显然我错了.有关如何修复makefile的任何想法,以便它不会将跳过的补丁解释为错误?

谢谢!

编辑:

如果我想在补丁之前cd到目录,那么使用-patch不起作用.这是结果:

Makefile文件:

all:        echo "starting..."        cd tmp && \                -patch -N < ../patchfiles/Makefile.linux-p3041-3_0.patch        echo "finished."

结果:

usr-mbp:makefile usr$makeecho "starting..."starting...cd tmp && \                -patch -N < ../patchfiles/Makefile.linux-p3041-3_0.patch/bin/sh: line 1: -patch: command not foundmake: *** [all] Error 127
解决方法 在命令 causes Make to ignore its exit status前添加减号.
-patch -N < patchfiles/foo.patch

不过,你真的必须考虑到这一点;如果命令也可能因为你想要检测的原因而失败怎么办?也许在实际的补丁命令之前或之后添加一些健全性检查.

总结

以上是内存溢出为你收集整理的linux – 如果补丁跳过补丁,如何不破坏makefile?全部内容,希望文章能够帮你解决linux – 如果补丁跳过补丁,如何不破坏makefile?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/1049994.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存