Why were GNU binutils and GDB merged as one package?

 ̄綄美尐妖づ 提交于 2019-12-12 10:38:05

问题


  • https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git

See, especially, the tags section.

What was the rationale behind this decision? Does the merge affect the suggested way to build latest binutils and GDB? (In fact when I checked out binutils-2_25_1 and ran make all && make install, I got gdb as well.)


回答1:


I did the conversion. The reason I made them a joined repository was partly historical and partly practical.

Historically gdb and binutils have pretty much always been together. They were in a single source tree (called "devo") when they were maintained inside Cygnus. Then, later, when sourceware.org was set up, they shared a repository (called "src"). You may not have noticed this because the repository used CVS modules to let developers check out just a part of the tree.

Practically, gdb and binutils share a lot of code. They share their build infrastructure (configure and the like); they share support libraries (the libiberty and include) directories; they share the BFD library; and they share the opcodes library. To me it made more sense to keep them together, both to avoid constant merging back and forth (this is already done for some components with GCC, and it's a real pain), and also to try to minimize problems where changes to one project negatively affect the other. For example, at least in theory people doing regular development on BFD should build both gdb and binutils.

The top-level configure script used by the shared repository lets the developer disable any particular directory using --disable-DIR. For example, if you don't want to build gdb, pass --disable-gdb.



来源:https://stackoverflow.com/questions/34037219/why-were-gnu-binutils-and-gdb-merged-as-one-package

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!