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

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

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

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 버전에는 컴파일러 드라이버가 사용 가능한 모든 언어를 알 수 있도록 하는 몇 가지 트릭이 있지만 모두 설치할 필요는 없습니다. )

관련 정보