テストおよびベンチマークスイートでGHCパッケージデータベースにアクセスする

セバスチャングラフ

GHC APIを使用してモジュールをCoreにコンパイルするテストスイートとベンチマークスイートがあるので、Coreを「手動で」作成する必要はありません

私は主stackにこの時点で使用してGHC_PACKAGE_PATHおり、テストスイート(stack test環境変数にアクセスして、GHCAPIにフィードできるパッケージデータベースを見つけることができます。特定のデータベースを気にするほどではないことに注意してくださいbase互換性のあるバージョンのGHC(eg GHC.Paths.ghcでコンパイルされた、egなどのモジュールが必要なだけです

これまでのところすべてが正常に機能しており、テストはグリーンです。さて、ベンチマークスイート(stack benchに対して同じGHC_PACKAGE_PATHことをすると、まったく存在しないようです。

簡単に言えば、プログラムが構築されたGHCパッケージデータベースへのパスをキャプチャするための信頼できる方法は何ですか?いじり回すとSetup.hs、自分がなりたい場所にたどり着くかもしれないと思います。


編集:ここで遊んでみてくださいhttps//github.com/sgraf812/ghc-package-path

stack testの値を出力しますがGHC_PACKAGE_PATH出力しstack benchません。この質問への回答は、いずれの場合も適切なパッケージデータベースへのパスが出力されるようにする必要があります。

セバスチャングラフ

適切な解決策は、カスタムSetup.hs使用しwithPackageDBLocalBuildInfoafterのフィールドを永続化することであるように思われますconfigure

幸運なことにcabal-toolkit、バージョン0.0.3を変更して、Cabal 1.24(およびGHC 8.0.2)でも動作するようにし、マージされるまでここで見つけました

packageDBFlags/を取得するにextraPkgConfは、を呼び出すだけgetGHCPackageFlags $(localBuildInfoQ)です。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

クラスに対する関数ラッパーのパフォーマンスベンチマークと、コンストラクター呼び出し呼び出しおよびHaveSameMapのみのパフォーマンスベンチマーク

分類Dev

マイクロサービスベースのアーキテクチャにおけるアップストリームおよびダウンストリームサービスとは何ですか?

分類Dev

コード(スクリプト)、モジュール、およびデータベース(クエスト、ベンダー、アイテムの追加)の両方をカスタマイズして、Docker Azerothcoreを適切に更新する方法

分類Dev

ビューページャーでスクロール中にタッチイベントをインターセプトするテキストビュー

分類Dev

CloudKit-パブリックおよびプライベートデータベース-メッセージングプラットフォーム

分類Dev

svnおよびClearCaseで以前のバージョンの特定のコードベース(またはデータ)をチェックアウトする方法

分類Dev

Python3パッケージおよびスクリプトでのインポートのベストプラクティス

分類Dev

インターネット経由でラズベリーデスクトップにアクセスする

分類Dev

ベンダーディレクトリのパッケージにアクセスする方法

分類Dev

インデックスによるベクトルイテレータへのアクセス?

分類Dev

Ruby on Rails:JSONPathを使用して、JSON配列内のネストされたオブジェクト/プロパティにアクセス(およびデータベースに保存)するにはどうすればよいですか?

分類Dev

ワークベンチSQLからデータベースをエクスポートおよびインポートする方法

分類Dev

ターンベースのマルチプレイヤーでクラスからデータベースにアクセスする際の問題

分類Dev

マルチデータベースアプリケーションによるアクセス制御

分類Dev

パッケージプライベートメソッドにアクセスする外部クラス

分類Dev

マシンのCPU、メモリ、ディスク、およびネットワークI / Oパフォーマンスをベンチマークするために、どのJavaユーティリティが存在しますか?

分類Dev

注入およびパッケージングサービス、インフラストラクチャ、およびデータレイヤー

分類Dev

セクションベースのテーブルビューでスイッチ変更イベントのセルのインデックスパスを取得するにはどうすればよいですか?

分類Dev

AndroidでMulipleネットワークインターフェースにアクセスする方法(WiFiおよびモバイルデータ)

分類Dev

車のデータベースWebおよびデスクトップアプリケーションのデータベース設計

分類Dev

同じパッケージ内のプライベート内部クラスにアクセスする

分類Dev

チェックボックスイベントでネストされたリストビューデータテンプレートのラベル名にアクセスする方法

分類Dev

MVCおよびWebApiプロジェクトのデータベースにテーブルを追加する

分類Dev

Golangで別のパッケージのプライベート関数にアクセスする方法は?

分類Dev

プライベートデータコンストラクターでのパターンマッチング

分類Dev

プライバシーポリシーページをアクセプタンスチェックボックスのラベルテキストにリンクするにはどうすればよいですか?

分類Dev

サーバーにWindowsアプリケーションvb2008とmysqlデータベースをセットアップし、クライアントでアクセスするにはどうすればよいですか?

分類Dev

反応でイベントリスナーを動的にアタッチおよび削除する

分類Dev

C#データベースアプリケーションでスイッチを表示および非表示にする

Related 関連記事

  1. 1

    クラスに対する関数ラッパーのパフォーマンスベンチマークと、コンストラクター呼び出し呼び出しおよびHaveSameMapのみのパフォーマンスベンチマーク

  2. 2

    マイクロサービスベースのアーキテクチャにおけるアップストリームおよびダウンストリームサービスとは何ですか?

  3. 3

    コード(スクリプト)、モジュール、およびデータベース(クエスト、ベンダー、アイテムの追加)の両方をカスタマイズして、Docker Azerothcoreを適切に更新する方法

  4. 4

    ビューページャーでスクロール中にタッチイベントをインターセプトするテキストビュー

  5. 5

    CloudKit-パブリックおよびプライベートデータベース-メッセージングプラットフォーム

  6. 6

    svnおよびClearCaseで以前のバージョンの特定のコードベース(またはデータ)をチェックアウトする方法

  7. 7

    Python3パッケージおよびスクリプトでのインポートのベストプラクティス

  8. 8

    インターネット経由でラズベリーデスクトップにアクセスする

  9. 9

    ベンダーディレクトリのパッケージにアクセスする方法

  10. 10

    インデックスによるベクトルイテレータへのアクセス?

  11. 11

    Ruby on Rails:JSONPathを使用して、JSON配列内のネストされたオブジェクト/プロパティにアクセス(およびデータベースに保存)するにはどうすればよいですか?

  12. 12

    ワークベンチSQLからデータベースをエクスポートおよびインポートする方法

  13. 13

    ターンベースのマルチプレイヤーでクラスからデータベースにアクセスする際の問題

  14. 14

    マルチデータベースアプリケーションによるアクセス制御

  15. 15

    パッケージプライベートメソッドにアクセスする外部クラス

  16. 16

    マシンのCPU、メモリ、ディスク、およびネットワークI / Oパフォーマンスをベンチマークするために、どのJavaユーティリティが存在しますか?

  17. 17

    注入およびパッケージングサービス、インフラストラクチャ、およびデータレイヤー

  18. 18

    セクションベースのテーブルビューでスイッチ変更イベントのセルのインデックスパスを取得するにはどうすればよいですか?

  19. 19

    AndroidでMulipleネットワークインターフェースにアクセスする方法(WiFiおよびモバイルデータ)

  20. 20

    車のデータベースWebおよびデスクトップアプリケーションのデータベース設計

  21. 21

    同じパッケージ内のプライベート内部クラスにアクセスする

  22. 22

    チェックボックスイベントでネストされたリストビューデータテンプレートのラベル名にアクセスする方法

  23. 23

    MVCおよびWebApiプロジェクトのデータベースにテーブルを追加する

  24. 24

    Golangで別のパッケージのプライベート関数にアクセスする方法は?

  25. 25

    プライベートデータコンストラクターでのパターンマッチング

  26. 26

    プライバシーポリシーページをアクセプタンスチェックボックスのラベルテキストにリンクするにはどうすればよいですか?

  27. 27

    サーバーにWindowsアプリケーションvb2008とmysqlデータベースをセットアップし、クライアントでアクセスするにはどうすればよいですか?

  28. 28

    反応でイベントリスナーを動的にアタッチおよび削除する

  29. 29

    C#データベースアプリケーションでスイッチを表示および非表示にする

ホットタグ

アーカイブ