ヘッダーファイルだけで構成されたライブラリが流行っていますよね。
こういうライブラリで静的な変数をうまく初期化する方法はあるでしょうか?

すぐに考え付く方法として、関数のスコープで静的な局所変数を宣言し関数の戻り値として利用する方法です。
int const * getData()
{
  static int const data[] = { 1, 2, 3, 4, 5 };
  return data;
}
この方法は、現行のC++ではスレッドを利用した時に破綻します。(C++0xでは保障されるようです。)

しかし、ヘッダー内で普通に大域変数として初期化すると、DLLとDLLを利用するプログラムの両方に
実体が出来るため、リンクに失敗します。

こういう場合、一体どうすればいいのでしょう?