autotools automake를 사용하여 데비안을 패키징할 때 라이센스 파일을 제거하는 방법은 무엇입니까?

autotools automake를 사용하여 데비안을 패키징할 때 라이센스 파일을 제거하는 방법은 무엇입니까?

내 Debian 패키지에서 lintian 오류가 발생합니다.

Rhythmbox-plugin-alternative-toolbar: 추가 라이센스 파일 usr/lib/rhythmbox/plugins/alternative-toolbar/LICENSE

이는 소스 코드에 LICENSE 파일이 포함되어 있고 데비안 패키징 규칙에 따라 모든 라이선스 정보는 패키지의 저작권 파일 내에 있어야 하기 때문입니다.

나는 autotools automake를 사용하여 빌드하고 있습니다. 내 데비안/규칙은 다음과 같습니다:

#!/usr/bin/make -f

/usr/share/cdbs/1/rules/autoreconf.mk를 포함합니다.
/usr/share/cdbs/1/rules/debhelper.mk를 포함합니다.
/usr/share/cdbs/1/rules/utils.mk를 포함합니다.
/usr/share/cdbs/1/class/gnome.mk 포함
/usr/share/gnome-pkg-tools/1/rules/uploaders.mk를 포함합니다.
/usr/share/gnome-pkg-tools/1/rules/gnome-version.mk를 포함합니다.
-include /usr/share/gnome-pkg-tools/1/rules/gnome-get-source.mk

DEB_DH_AUTORECONF_ARGS := --주문형./autogen.sh

# 제거된 모든 파일을 나열합니다.
범용 바이너리 설치 후 아키텍처::목록 누락

내 초기 생각은 라이센스 파일을 제거하기 위해 규칙에 override_dh_auto_install 문을 포함하는 것이었지만 현재 규칙의 맨 아래에 다음을 추가하면 이것이 무시되거나 작동하지 않는 것 같습니다.

override_dh_auto_install:
    찾다. - 이름 "라이센스" - 삭제됨
    dh_자동 설치

그래서 제 질문은 - 데비안 패키지를 빌드할 때 LICENSE 파일을 어떻게 제거합니까?입니다.

참고 - 일종의 재정의를 통해 Lintian 오류를 인위적으로 숨기고 싶지 않습니다. 빌드된 패키지에 추가 라이센스 파일이 포함되어 있지 않은지 확인하고 싶습니다.

답변1

이 질문은 약 2년 전에도 답변이 없었습니다. 그래서 최근에 찾은 해결방법을 포스팅하겠습니다.

파일 삭제뒤쪽에부르다dh_자동 설치:

override_dh_auto_install:
    dh_auto_install
    find ./debian -type f -name "LICENSE" -delete

또는 파일이 준비된 후 패키지가 빌드되기 전에 호출되는 다른 지시문을 재정의합니다. 먼저 재정의하여 수행한 방법은 다음과 같습니다.dh_md5sums지시하다:

override_dh_md5sums:
    find ./debian/<package_name> -type f -name "LICENSE.txt" -delete
    dh_md5sums

다른 사람을 압도하다DH_지시문도 작동할 수 있습니다.

관련 정보