2011-04-14 84 views
1

我正在尋找使用build.sh腳本在NetBSD交叉編譯中包含GNU Bash的最佳實踐。現在,我的計劃是將它包含在usr/src/gnu/dist中,然後在usr/src/gnu/usr.bin中創建相關的Makefiles,但我想知道是否有更簡單/更好的方法來執行此操作?如何在使用build.sh的NetBSD交叉編譯中包含Bash?

+1

因此,有兩種方法可以(結束了與在這裏並不適用第三種方式去)。第一個,如問題中提到的,將其包含在NetBSD源代碼樹的usr/src/gnu/dist下。但是,這裏出現的工具似乎主要用於交叉編譯。第二個選項是將它放在正確的許可證(gnu,顯然)下的extsrc樹中。這個選項比較容易一些,因爲對於Makefiles來說沒有那麼多的噓聲。 – Matthew 2011-05-06 13:44:42

回答

2

新的方法是將文件放在src/external下//。對於bash,它是src/external/gpl3/bash。 (以下稱此目錄爲$ {EXTTOPDIR.bash}。)

原始來源按原樣擴展到$ {EXTTOPDIR}/dist。其他文件和目錄在$ {EXTTOPDIR}中創建。例如,從複製src/external/gpl2/xcvs開始。 (BSD)makefile被放置(不在原始源文件中)稱爲「覆蓋」;這意味着構建過程不會影響原始來源。這有助於簡化原始來源的維護。 (並且,不幸的是,所有這些都沒有記錄在案,不幸的是。)

如果您需要將構建掛鉤爲「工具」,則需要更多關注內容。該程序也沒有記錄。只是從源頭上學習。

如果你在官方的NetBSD樹上工作,你還需要了解更多關於CVS的知識;使用供應商分支等

HTH, 正雄