Warum „Kabale Sdist“ nicht enthalten alle „Dateien zu erstellen erforderlich“?

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

  •  08-10-2019
  •  | 
  •  

Frage

Nach dem Wiki Eintrag,

Es Pakete bis die Dateien benötigt, um das Projekt erstellen

Ich habe ein einfache ausführbare Dateien nur für .cabal Projekt, das im Grunde enthält

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

und wird von einigen zusätzlichen .hs Dateien unter src/ über src/MyMain.hs aus. Z. B. src/Utils.hs und ein paar andere.

cabal build hat keine Probleme myprog Aufbau und erstellt die erforderlichen zusätzlichen .hs Dateien unter src/, aber cabal sdist nicht der Fall, so eine dysfunktionale Quelle-Tarball zu schaffen. Was mache ich falsch? Wie kann ich feststellen Kabale alle Quelldateien unter hs-Source-dirs enthalten?

Als Nebennote, mit GNU Autotool, gab es ein make distcheck Ziel, das zunächst einen Quelle-Tarball bauen würde, und dann versuchen, das Projekt über den neu generierten Source-Tarball zu bauen, damit alles in Ordnung zu gewährleisten. Gibt es etwas ähnliches für cabal, um meinen Quelle-Tarball, um sicherzustellen, Ton?

War es hilfreich?

Lösung

Sie sollten die anderen Haskell-Dateien in der .cabal Datei auflisten, in der Executable Strophe.

  other-modules: Utils AFewOthers

Die Distribution enthält nur Quelldateien, die in Ihrer .cabal Datei aufgeführt sind. Cabal hat keine andere Art und Weise, die Quelldateien sind in Ihrem Paket zu erkennen. Sie könnten noch bauen, weil cabal build ghc --make Anrufe und ghc finden und kompilieren alle Quelldateien es braucht.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top