2017-09-04 112 views
0

我有一個yocto配方,可以從github編譯代碼。我修改了一些文件,並希望將修補程序應用於從github獲取的代碼。以下是我編寫代碼的祕訣。將修補程序應用於yocto配方中的文件

SUMMARY = "Linux NFC stack for NCI based NXP NFC Controllers" 
HOMEPAGE = "https://github.com/NXPNFCLinux/linux_libnfc-nci" 
LICENSE = "Apache-2.0" 
LIC_FILES_CHKSUM = "file://src/include/linux_nfc_api.h;endline=17;md5=42fdb99b3ff2c12f594b22a774cb7308" 
SECTION = "libs" 

SRC_URI = "git://github.com/NXPNFCLinux/linux_libnfc-nci.git \ 

file:///home/pratyush/Desktop/custom_board/drivers/PN7150/linux_libnfc-nci/demoapp-main-patch1.patch" 
SRCREV = "7cf539d3d9c0d682c8da5968fbf5615ae9993060" 
PV = "2.1+git${SRCPV}" 
EXTRA_OECONF =" --enable-pn7150" 

S = "${WORKDIR}/git" 

inherit autotools 
FILES_${PN} += "${libdir}/libnfc_nci_linux-1.so" 
FILES_SOLIBSDEV = "${libdir}/libnfc_nci_linux.so" 

關注我的補丁應用

--- /home/root/PN7150/linux_libnfc-nci/Makefile.am 
+++ Makefile.am 
@@ -1,7 +1,7 @@ 
lib_LTLIBRARIES = libnfc_nci_linux.la 

-sbin_PROGRAMS = nfcDemoApp 
-nfcDemoApp_DEPENDENCIES = libnfc_nci_linux.la 
+sbin_PROGRAMS = readNfc 
+readNfc_DEPENDENCIES = libnfc_nci_linux.la 

LDFLAGS = -Bstatic 

@@ -9,13 +9,13 @@ 
LDFLAGS += -L$(openssldir)/lib -lcrypto -lssl 
endif 

-nfcDemoApp_FLAGS = -I$(srcdir)/demoapp -I$(srcdir)/src/include 
+readNfc_FLAGS = -I$(srcdir)/demoapp -I$(srcdir)/src/include 

AM_CPPFLAGS = \ 
-I$(srcdir)/src/include \ 
$(INCLUDE_PARAMS) \ 
$(libnfc_nci_linux_la_FLAGS) \ 
- $(nfcDemoApp_FLAGS) 
+ $(readNfc_FLAGS) 

if LLCP1_3 
AM_CPPFLAGS += \ 
@@ -177,7 +177,7 @@ 
src/service/linux_nfc_api.c \ 
src/service/linux_nfc_factory_api.c 

-nfcDemoApp_SOURCES := \ 
+readNfc_SOURCES := \ 
    demoapp/main.c \ 
    demoapp/tools.c 

@@ -231,6 +231,6 @@ 
libnfc_nci_linux_la_LDFLAGS +=-DPN551C2=3 
libnfc_nci_linux_la_LDFLAGS += -shared -pthread -ldl -lrt -fPIC -release 1 -versionnfo 0:0:0 

-nfcDemoApp_LDFLAGS = -pthread -ldl -lrt -lnfc_nci_linux 
+readNfc_LDFLAGS = -pthread -ldl -lrt -lnfc_nci_linux 

因此我想申請從本地補丁github上獲取代碼。但是,當我嘗試bitbake應用補丁我總是得到以下錯誤 「無法找到文件補丁在輸入3行」

回答

1

問題是你如何創建你的補丁。最簡單的方法(如果你習慣了git)就是使用git。否則,區分兩個完整的源代碼樹是一個好方法。

解決您的問題的一種方法是將;striplevel=0添加到SRC_URI行。 (bitbake/OE假定條帶級別爲1)。

另一種方法是修改補丁入手:

--- a/Makefile.am 
+++ b/Makefile.am 

這應該解決您的問題。

相關問題