2011-12-13 115 views
4

是否存在將gmake的GNU Makefile轉換爲可用於make(FreeBSD-make)的Makefile的實用程序?將gmake Makefile轉換成Makefile?

+0

你見過這個:http://stackoverflow.com/questions/1194957/what-is-the-difference-between-gmake-and-make? – pmod

+0

@pmod,不,我之前沒有看到過我的帖子。不幸的是,有趣的閱讀 - 它仍然不能回答我的問題。 – nickb

+0

當你使用freebsd-make爲gmake寫的makefile時,你期望什麼樣的不兼容性?你有沒有試過使用makefile?即你能否詳細說明你的問題 – pmod

回答

1

這是不可能的,因爲你可以在GNU make中做的事情你不能在make的其他版本中做。除此之外,用於處理字符串的函數宏和makefile中的條件通常不可用。

2

如前所述,沒有這樣的轉換器,我非常懷疑可能存在這樣的轉換器。據我瞭解,你有兩種選擇:

  1. 使用GNU make port到FreeBSD。例如this

  2. 補丁makefiles使它們兼容FreeBSD使。實際上LuaJIT中沒有太多這樣的內容(main Makefilesrc/Makefile)。這應該相當容易。只要確保你擁有所有的工具(檢查shell中的內容),並逐步修復「錯誤」。

    例如,在線路錯誤29(出口PREFIX =的/ usr /本地)是由於GNU使指令出口其具有在FreeBSD中不作任何類似。 manual「環境變量設置在正在運行make的shell中的Makefile外部」,因此您必須遵守此要求。你

    還需要解決所有使條件語句和等,差異的一大堆被收集在BSD make vs. GNU make

4

該實用程序被稱爲開發商(程序員,做大師,... ):-) 嚴肅地說,這項任務所需的人工智能足夠複雜,並且自動轉換的需求足夠接近epsilon,沒有人會認真考慮編程。

如果你有一個GNU makefile,最好使用GNU make。