私のプロジェクトに外部ツリーを持つbuildrootを使用しています。 Buildrootは、svnに格納されているいくつかのカスタムパッケージを使用してプロジェクトを構築し、開発者が開発しています。これらのパッケージを各ビルドのリポジトリからどのように更新できますか? Build-inのダウンロードヘルパーは一度パッケージをダウンロードしてアーカイブに保存しますが、毎回ソースから更新する必要があります。私はこのために私自身のダウンロードヘルパーを書く必要がありますか? 私が思いついたのは、svnリポジトリ(パッケージの* .mkファイルを含む)にbuildroot設定全体を保存し、svn-extrenalプロパティを追加して 'ローカル'ダウンロードルールを使用することでした。buildrootでプロジェクト固有のパッケージを更新する
答えて
Buildrootはあなたのソースはsvn update
です。その理由とニーズに最も適した解決方法は、Buildroot user manualの「開発中のBuildrootの使用」のセクションに説明されています。
理由: Buildrootのダウンロード数が一定であることを意味している:再ダウンロード同じ<PKG>_VERSION
で同じパッケージを正確同じソースコードをダウンロードすることになっています。これは、ビルドシステムとして使用するときには正常であり、開発中には使用しない(これはあなたが求めるものです)。
解決策1:は、<PKG>_OVERRIDE_SRCDIR
機能を使用します。それを使って、あなたが開発しているすべてのパッケージを別のディレクトリにチェックアウトし、svn、gitなどで管理することができます。 Buildrootはあなたのコードに決して触れません。ビルドディレクトリにコピーしてビルドするだけです。パッケージを更新して再構築または再構成するための簡単なスクリプトを書くことができます。例えば:
for D in $(ls my-repos/); do
pushd $D
svn update
popd
done
make mypkg1-rebuild mypkg2-reconfigure all
各開発者は、この方法を異なるパッケージセットで使用することができます。彼らが開発しているものだけです。
解決方法2:ユニークなSubversionのレポでBuildrootコードとあなたのパッケージのソースコードのすべてを入れて、あなたのパッケージの<PKG>_SITE_METHOD=local
を使用しています。 svn update
この大きなレポは、すべてが更新されます。上記のようにmake mypkg1-rebuild mypkg2-reconfigure all
で再構築してください。
このソリューションの欠点は、パッケージが多数ある場合、ユニークなレポが非常に大きくなることです。また、Subversionをすべてのものに使用する必要があります。また、最初のソリューションと同様に、「ローカル」パッケージのセットを選択することはできません。
- 1. MySQL固有の更新クエリ
- 2. OpenWRT BuildRootでパッケージをビルドするには
- 3. Yocto - プロジェクト固有の変更でリポジトリを作成する方法
- 4. buildroot内でmDNSを有効にする
- 5. BuildrootにPythonパッケージを追加する
- 6. パッケージ固有のHibernate NamingStrategy
- 7. エンティティフレームワークコア更新データベース固有の移行
- 8. 更新固有のID 2008 R2
- 9. スパース行列の固有対角更新
- 10. WCF加入者固有の更新?
- 11. sublimetext2のプロジェクト固有のテーマ
- 12. Buildroot - Qt5 WebKitを有効にする
- 13. BuildrootでLinuxを変更する
- 14. Django固有の制約を持つモデルフォームを更新する
- 15. firebaseデータベース固有のフィールド複数の場所を更新する
- 16. nodejs npmプラットフォーム固有のパッケージをインストール
- 17. Eclipseとパッケージ固有のエディタの設定
- 18. Visual StudioでNuGetパッケージを更新すると、プロジェクトのビルドが失敗する
- 19. Clearcaseでプロジェクト固有のファイルを作成する
- 20. 同じプロジェクトのユーザー固有のソナーレポート
- 21. チームシティのプロジェクト固有のビルド番号
- 22. Nativescriptプラットフォーム固有のプロジェクトの使用
- 23. .NET AnyCPUプロジェクトは、プラットフォーム固有のライブラリに
- 24. 各プロジェクトに固有のEclipseブレークポイント?
- 25. Visual Studio 2010ローカルマシン - プロジェクト固有のプロパティ
- 26. Windows上でHaskellパッケージを更新する
- 27. プログラムでNuGetパッケージを更新する
- 28. Buildrootは、プロジェクト固有のホストパッケージのmakeターゲットを、プロシージャごとのビルドに追加していないのはなぜですか?
- 29. npm - プロジェクト固有の既定のプレフィックス/パスを設定する
- 30. Androidプロジェクトのデベロッパー固有のローカル設定を保存する