如何在 OpenWrt 中修改现有的内核软件包?



我想对package/kernel/mac80211的代码进行一些修改。 我是OpenWrt的新手,经过一些研究,我认为我应该将PKG_SOURCE_URL更改为我自己的GitHub存储库,这是我自己的/linux/kernel/projects/backports/stable/v4.19.120的副本。 所以我更改包/内核/mac80211/制作文件,如下所示:

PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/sheep94lion/openwrt.git
PKG_SOURCE_VERSION:=168bae33318ebd14d8c035b543a2583ea31f9f52
PKG_MIRROR_HASH:=skip
# PKG_SOURCE_URL:=@KERNEL/linux/kernel/projects/backports/stable/v4.19.120/
# PKG_HASH:=2bafd75da301a30a5f2b98f433b6545d7b58c1fc3af15e9e9aa085df7f9db1d4

我的问题是:我的方向是否正确?修改现有内核软件包的正确/正确方法是什么?

我将源文件复制到package/kernel/mac80211/src目录(先创建目录(,然后修改Makefile以使用本地源文件,而不是从官方URI下载和解压缩。

Makefile中的修订如下:

# comment out the configurations to download the tarball.
# PKG_SOURCE_URL:=@KERNEL/linux/kernel/projects/backports/stable/v4.19.120/
# PKG_HASH:=2bafd75da301a30a5f2b98f433b6545d7b58c1fc3af15e9e9aa085df7f9db1d4
# PKG_SOURCE:=backports-$(PKG_VERSION).tar.xz
......
define Build/Prepare
rm -rf $(PKG_BUILD_DIR)
mkdir -p $(PKG_BUILD_DIR)
# do not unpack the downloaded tarbar.
# $(PKG_UNPACK)
# instead, copy files under src to the build directory.
$(CP) ./src/* $(PKG_BUILD_DIR)/
$(Build/Patch)

当我想发布代码时,我认为我应该使用补丁。

最新更新