2017-09-04 3 views
0

Ich habe ein yocto Rezept, um einen Code von Github zu kompilieren. Ich habe einige Dateien modifiziert und möchte einen Patch auf Code anwenden, der von github geholt wurde. Folgendes ist mein Rezept für den Code.Anwendung Patch auf Datei in yocto Rezept

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" 

Nach meinem Patch angewendet

--- /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 

So möchte ich Patch von lokalen anzuwenden geholt Code GitHub. Aber wann immer ich versuche, Patch bitbake anwenden ich folgende Fehlermeldung immer bekommen „nicht finden kann Datei auf der Eingangsleitung 3 to patch“

Antwort

1

Das Problem ist, wie Sie Ihren Patch erstellt. Der einfachste Weg (wenn Sie daran gewöhnt sind) ist git. Ansonsten ist es ein guter und einfacher Weg, zwei vollständige Quellbäume zu entfernen.

Eine Möglichkeit, Ihr Problem zu lösen, wäre ;striplevel=0 in die SRC_URI Zeile hinzuzufügen. (Bei bitbake/OE wird ein Striplevel von 1 angenommen.)

Ein anderer Weg wäre, um Ihre Patch zu ändern, mit zu beginnen:

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

, dass Ihr Problem lösen sollte.

Verwandte Themen