更改openwrt编译包的默认目录src
Change default directory src for openwrt compiling package
我正在为包含多个模块的 openwrt 创建一个包。
如果结构是:
,包编译正确
package_name
. Makefile<s>.txt</s>
. files
. src
+ CMakeLists.txt
+ Module1
+ Module2
+ ...
+ Modulen
但是如果我将名称 src 更改为 modules 它会显示错误。我知道搜索 src 目录的默认结构,但是,
我应该向我的 Makefile.txt 添加什么以将默认值 src 更改为任何其他值?
谢谢。
OpenWRt 包结构can be found here。对您来说有趣的部分是 Bundle source code with OpenWrt Makefile
。
(恐怕 Makefile
应该只是 Makefile
而没有 txt
扩展名。如果你能 post 你的完整 Makefile 会很有帮助 - 但我会的不用它试试。另外请注明您使用的 OpenWRT 版本,答案可以是版本相关的)
我在 include/package-defaults.mk
中找到了以下 [OpenWRT 19.07.1]:
Build/Patch:=$(Build/Patch/Default)
ifneq ($(strip $(PKG_UNPACK)),)
define Build/Prepare/Default
$(PKG_UNPACK)
[ ! -d ./src/ ] || $(CP) ./src/. $(PKG_BUILD_DIR)
$(Build/Patch)
endef
endif
这对我来说意味着,要么你:
- 在您的 Makefile 中定义
PKG_UNPACK
如下:PKG_UNPACK=$(CP) ./modules/. $(PKG_BUILD_DIR)
- 如下覆盖默认准备部分(或复制递归,具体取决于您的结构):
.
define Build/Prepare
$(call Build/Prepare/Default)
$(CP) ./modules/* $(PKG_BUILD_DIR)/
endef
我正在为包含多个模块的 openwrt 创建一个包。 如果结构是:
,包编译正确package_name
. Makefile<s>.txt</s>
. files
. src
+ CMakeLists.txt
+ Module1
+ Module2
+ ...
+ Modulen
但是如果我将名称 src 更改为 modules 它会显示错误。我知道搜索 src 目录的默认结构,但是, 我应该向我的 Makefile.txt 添加什么以将默认值 src 更改为任何其他值?
谢谢。
OpenWRt 包结构can be found here。对您来说有趣的部分是 Bundle source code with OpenWrt Makefile
。
(恐怕 Makefile
应该只是 Makefile
而没有 txt
扩展名。如果你能 post 你的完整 Makefile 会很有帮助 - 但我会的不用它试试。另外请注明您使用的 OpenWRT 版本,答案可以是版本相关的)
我在 include/package-defaults.mk
中找到了以下 [OpenWRT 19.07.1]:
Build/Patch:=$(Build/Patch/Default)
ifneq ($(strip $(PKG_UNPACK)),)
define Build/Prepare/Default
$(PKG_UNPACK)
[ ! -d ./src/ ] || $(CP) ./src/. $(PKG_BUILD_DIR)
$(Build/Patch)
endef
endif
这对我来说意味着,要么你:
- 在您的 Makefile 中定义
PKG_UNPACK
如下:PKG_UNPACK=$(CP) ./modules/. $(PKG_BUILD_DIR)
- 如下覆盖默认准备部分(或复制递归,具体取决于您的结构):
.
define Build/Prepare
$(call Build/Prepare/Default)
$(CP) ./modules/* $(PKG_BUILD_DIR)/
endef