2014年8月25日月曜日

nuget と dshow-baseclasses でごちゃごちゃと。

dshow でおなじみの baseclasses 用の nuget のための autopkg(CoApp, c++版の nuget パッケージ用設定ファイル) を書いたノート。

  1. windows sdk 辺りから dshow/baseclasses フォルダを作業フォルダにコピー。
  2. vs2013 で開いて、設定の微調整。
    1. SolutionDir と 中間Dir を普通にプロジェクトを作成した通りに修正。
      • Win32, 出力Directory: $(SolutionDir)$(Configuration)\
      • Win32, 中間Directory: $(Configuration)\
      • x64, 出力Directory: :$(SolutionDir)$(Platform)\$(Configuration)\
      • x64, 中間Directory: $(Platform)\$(Configuration)\
      • 出力 ファイル(lib) を、自分の趣味で、$(OutDir)$(TargetName)$(TargetExt) に変更。
      • PDB を自分の趣味で、$(OutDir)\$(ProjectName).pdb に変更。
    2. TimeKillSynchronousFlagAvailable 関数で、 エラーでてるから、IsWindowsXPOrGreater 関数に直す。
      このとき, mbcs は消した方が混乱しない気がする。
  3. win32/x64 でビルド。
  4. 下のファイル(BaseClasses.autopkg)を作業フォルダにコピー。
  5. PowerShell 起動して、上記作業フォルダに移動。
  6. Write-NuGetPackage .\BaseClasses.autopkg
    を実行すると、警告が出るけど、パッケージが作れる。
自分のところのローカル nuget サーバーに出来上がったnupkgファイルを置けばいいはず。