「Cabal Sdist」にすべての「ビルドに必要なファイル」が含まれていないのはなぜですか?

StackOverflow https://stackoverflow.com/questions/4639526

  •  08-10-2019
  •  | 
  •  

質問

による ウィキ エントリ、

プロジェクトの構築に必要なファイルをパッケージ化します

簡単な実行可能ファイルのみがあります .cabal 基本的に含まれるプロジェクト

Executable myprog
  hs-source-dirs: src
  main-is: MyMain.hs

追加で構成されています .hs 以下のファイル src/src/MyMain.hs. 。例えば、 src/Utils.hs そして他のいくつか。

cabal build 構築に問題はありません myprog, 、必要な追加をコンパイルします .hs 以下のファイル src/, 、 しかし cabal sdist そうではないため、機能不全のソースタルボールを作成します。私は何が間違っているのですか? HS-Source-Dirsの下にすべてのソースファイルを含めるようにCabalに指示するにはどうすればよいですか?

サイドノートとして、GNU AutoToolsとともに、 make distcheck ターゲットは、最初にソースタールボールを構築し、次に新しく生成されたソースタルボールを介してプロジェクトを構築しようとし、すべてがOKであることを確認します。似たようなものはありますか cabal, 、私のソースタルボールが健全であることを確認するために?

役に立ちましたか?

解決

に他のHaskellファイルをリストする必要があります .cabal ファイル、内部 Executable スタンザ。

  other-modules: Utils AFewOthers

配布には、あなたのにリストされているソースファイルのみが含まれます .cabal ファイル。 Cabalには、パッケージに含まれているソースファイルを検出する他の方法はありません。あなたはまだ構築することができます cabal build 電話 ghc --make, 、およびGHCは、必要なすべてのソースファイルを見つけてコンパイルします。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top