私のプロジェクトは外部パッケージを使用しています。これらのパッケージは tarball で配布され、tarball が更新されるとその内容が抽出されます。
たとえば、ブーストを使用します。対応する外部パッケージは boost.tar.bz2 です。このパッケージには、ヘッダー ファイルとライブラリが含まれています。私がやりたいことは、tarball が更新されたときに、このアーカイブの内容を scons で自動的に抽出することです。
これは、「タイムスタンプ ファイル」を使用して Makefile で実現できます。tarball がタイムスタンプ ファイルよりも新しい場合、アーカイブは自動的に抽出されます。
all: external-packages
external-packages: boost xml2
boost: .boost-timestamp
xml2: .xml2-timestamp
.boost-timestamp: boost.tar.bz2
@echo updating boost externals
@tar xjf boost.tar.bz2
@touch .boost-timestamp
.xml2-timestamp: xml2.tar.bz2
@echo updating xml2 externals
@tar xjf xml2.tar.bz2
@touch .xml2-timestamp
clean:
rm -rf .*-timestamp boost xml2
どうすればsconsで同じことを達成できますか?