선택적 파일이 포함된 데비안 패키지

선택적 파일이 포함된 데비안 패키지

데비안 패키지를 생성하는 스크립트가 존재하고 작동합니다. 수정해야 해요. 새로운 특정 경우에는 패키지에 포함하고 싶은 선택적 파일이 있을 수 있습니다.

package.install에 추가하면 해당 파일만 존재하지 않으므로 실패합니다. package.install에 추가하지 않으면 존재하더라도 패키지에 포함되지 않습니다.

특정 사례를 확인하기 위해 특별한 환경 변수가 있습니다.SPECIFIC_CASE=CASE

특정한 경우에 해당 파일을 검색하려면 데비안 패키지 생성 스크립트를 어떻게 설정해야 합니까?

rulesMakefile로 설계된 파일에는 다음과 같은 대상이 있습니다.

copy_files:
override_dh_install:
override_dh_auto_install: (empty)
...list of other overrides...
install:
postbuild:
clean:

답변1

데비안의 대부분 패키징 도구를 사용하면 패키지의 내용은 실행될 때 package무엇이든 됩니다 . 원하는 방식으로 파일을 배치할 수 있으며 (파일을 처리하는 도구인 ) 의존할 필요가 없습니다.debian/packagedpkg-debdh_install.install

따라서:

override_dh_install:
        dh_install
        install blah debian/package/wherever

등등. 여기에 조건부 파일 처리를 추가할 수 있습니다.

하지만패키징 사양(그리고 이는 데비안에만 국한되지 않음)이 일관되어야 한다는 것을 인식하는 것이 중요합니다.특정 아키텍처에서 패키지를 빌드하면 항상 동일한 패키지 내용이 생성되어야 합니다. 선택적 콘텐츠 패키징에는 일반적으로 모든 파일이 생성되도록 프로젝트를 빌드한 다음 이를 모두 설치할 필요가 없는 다른 패키지로 디스패치하는 작업이 포함됩니다. (이것~할 수 있다많은 노력을 기울이고,예를 들어컴파일러 드라이버가 사용 가능한 모든 언어를 알 수 있지만 모두 설치할 필요는 없도록 몇 가지 트릭이 있는 GCC 빌드입니다.)

관련 정보