2011-01-06 2 views
2

내가 만드는 Perl 모듈에 Perl 모듈을 빌드하는 "Makefile.PL"또는 "Build.PL"과 같은 것이 있으면, 예를 들어 모듈에 특정 운영 체제 또는 특정 라이브러리가 시스템에서 빌드 프로세스가 올바르게 정지되도록 "Makefile.PL"을 어떻게 작성해야합니까? 나는 특히 모듈이 http://www.cpantesters.org/에서 "실패"결과를 얻지 못하게하기 위해 CPAN 테스터가 요구하는 방법에 관심이 있습니다.Perl 모듈 빌드 프로세스를 중지하는 올바른 방법은 무엇입니까?

+0

효과적인 Perl 프로그래밍 _에는 이런 종류의 조언이 있습니다. –

답변

6

http://wiki.cpantesters.org/wiki/CPANAuthorNotes 인용 :

은 "내가 어떻게 내에서만 배포가 특정 운영 체제에서 작동 표시 할 수 있습니까?"

No support for OS 
OS unsupported 
: 그것은 매우 우아한 해결책은 아니지만

의 추천 방법은 다음 메시지 중 하나 (테스트 파일에 BAIL_OUT 또는)을 Makefile.PL 또는 Build.PL에서 죽을 중 하나입니다

CPAN 테스터 도구는 해당 문구 중 하나를 찾아 해당 플랫폼에 대한 NA (Not Available) 보고서를 보냅니다.

"누락 된 라이브러리 또는 다른 비 Perl 종속성에 대한 FAIL 보고서 수신을 중지하려면 어떻게합니까?"

특별한 의존성이 있고 의존성을 사용할 수없는 경우 CPAN 테스터 보고서를 얻고 싶지 않은 경우에는 Makefile.PL 또는 Build.PL을 정상적으로 종료 코드 0으로 종료하십시오. Makefile 또는 Build 파일이 생성됩니다.

exit 0 unless some_dependency_is_met(); 
관련 문제