“debuild -S”更改 debian/control

“debuild -S”更改 debian/control

我正在尝试修改一个nvidia相关包来自 Ubuntu Saucy 存储库。我更改了 Build-Depends: 行,运行debuild -S为我的 PPA 生成源上传,并且...令人惊讶的是,debian/control 中的 Build-Depends 行恢复为原始状态。这怎么可能?我该如何防止这种疯狂行为?我的意思是,一般来说,包如何影响其构建过程的输入?

这类似于gcc -o prog prog.c能够更改 prog.c。我不知道为什么 Debian 让源代码构建如此图灵完备——也不知道为什么有人会利用这种误导性的功能。

dget http://archive.ubuntu.com/ubuntu/pool/restricted/n/nvidia-graphics-drivers-319-updates/nvidia-graphics-drivers-319-updates_319.60-0ubuntu1.dsc
dpkg-source -x nvidia-graphics-drivers-319-updates_319.60-0ubuntu1.dsc
# change the Build-Depends line
perl -pi.bak -e 's/(xserver-xorg-dev)/xserver-xorg-dev-lts-raring | $1/' debian/control
cp debian/control /tmp
debuild -S
diff debian/control /tmp/control # proving debuild changed debian/control

答案1

我看到一个control.in文件位于 nvidia-graphics-drivers-319-updates-319.60/debian/templates/control.in.我假设该control文件是从该文件重新生成的,尽管我没有仔细检查这一点。我以前遇到过这样的情况,通常是使用更复杂的包装。我建议更改该文件而不是该control文件。

相关内容