반응형
내 Haskell 프로그램이나 라이브러리가 버전 번호를 어떻게 찾을 수 있습니까?
내 cabalised 프로그램에 --version
스위치 가 있기를 바랍니다 .
.cabal 파일에있는 것과 동일한 버전을보고하고 싶습니다.
내 Haskell 소스 코드와 .cabal 파일에서 별도로 버전 번호를 업데이트해야한다면 결국 동기화되지 않을 것입니다.
그렇다면 내 프로그램이 cabal에서 컴파일되는 동안 어떻게 .cabal 파일에서 버전 번호를 얻을 수 있습니까?
이것은 Cabal에서 잘 지원됩니다. 다음과 같이 (xmonad에서) :
가져 오기 Paths_$myprogram
-Cabal은 버전 번호를 처리하기위한 모듈과 함께 .cabal 파일의 많은 메타 데이터를 사용하여 생성합니다.
import Paths_xmonad (version)
import Data.Version (showVersion)
에서 제공 한 '버전'필드를 인쇄하려면 print 문을 추가하십시오 Paths_$myprogram
.
case args of
["--version"] -> putStrLn ("xmonad " ++ showVersion version)
일반적으로 Cabal의 생성 된 Paths 파일에는 다음 값이 포함됩니다. dist/build/autogen/
version,
getBinDir, getLibDir, getDataDir, getLibexecDir,
getDataFileName
반응형
'IT Share you' 카테고리의 다른 글
Java에서 "new String (…)"이라는 표현의 목적은 무엇입니까? (0) | 2020.12.01 |
---|---|
XmlDocument와 XmlReader를 사용할시기 결정 (0) | 2020.12.01 |
패턴 매칭과 가드의 차이점은 무엇입니까? (0) | 2020.12.01 |
C #의 사전 및 사후 증가 (0) | 2020.12.01 |
TPL과 비동기 / 대기 (스레드 처리)의 차이점 (0) | 2020.12.01 |