Linux에서 패치 패키지 (.patch 파일) 생성 및 사용 [u-boot 예]

수요

u-boot 포팅시 일반 u-boot 소스 코드를 수정해야하며 매번 반복되는 수정을 피하기 위해 패치 패키지 형태를 직접 사용합니다.


패치 패키지 만들기

# 1、完成功能调试之后,在当前目录下执行 
make distclean

# 2、切换到上一级目录
cd ..

# 3、修改文件夹名称  
mv u-boot u-boot-bak

# 4、解压之前的压缩包,即准备未修改的文件
tar xjf u-boot.tar.bz2 

# 5、对比两个文件夹,并生成补丁
diff -urN u-boot u-boot-ask > u-boot-uart1.patch

패치 패키지 사용

# 1、解压uboot源码
tar xjf u-boot.tar.bz2

# 2、切换到解压好的路径下
cd u-boot/

# 3、打补丁(u-boot-uart1.patch 在u-boot 同级目录)
patch -p1 < ../u-boot-uart1.patch

사용 예 : (패치에 의해 수정 된 파일이 표시됩니다)

pjw@pjw-virtual-machine:/u-boot$ patch -p1 < ../u-boot-uart1.patch 

patching file arch/arm/dts/suniv.dtsi
patching file arch/arm/dts/suniv-f1c100s-licheepi-nano.dts
patching file arch/arm/include/asm/arch-sunxi/gpio.h
patching file arch/arm/mach-sunxi/board.c
patching file include/configs/suniv.h

추천

출처blog.csdn.net/p1279030826/article/details/113132774