• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:拡張子が一意でないときの makeコマンドの使い方)

拡張子が一意でないときの makeコマンドの使い方

このQ&Aのポイント
  • 自動化のためにMakefileを使用してXMLファイルを変換する方法について質問しています。
  • 要約: 質問者は、msxslコマンドを使用してXMLファイルを変換するためのMakefileを作成しようとしています。しかし、特定のファイルのみを対象にすることができず、全てのファイルが変換されてしまいます。
  • 要約: 質問者は、Makefileの記述方法を知りたいと思っています。

質問者が選んだベストアンサー

  • ベストアンサー
  • wormhole
  • ベストアンサー率28% (1626/5665)
回答No.2

>できれば複数の変換パターンがある場合についても >おしえていただけませんでしょうか? 補足に書かれているように.xmlから.htmlへの変換パターンが複数ある場合ですよね? 元になるファイルのあるディレクトリや出力先ディレクトリが異なるなど区別できるものがあればできなくはないですが、 そうでないなら静的型ルールやサフィックスルールで行うのは無理です (あなただってXML1.xml,XML2.xml,XML3.xmlにはHTML.xslを使って、XML11.xml,XML12.xml,XML13.xmlにはHTML2.xslを使って変換するという事を知らなかったらできないですよね?)。 ですので、やるとするなら ・上にもあげているようにルール毎にファイルを置く場所を変えるなど区別できる何かを用意する ・静的型ルールなどを用いずに変換するルールを全て書く(ただしユーザー定義関数を用いることで簡略化することはできる) あたりになります。

hzd00430
質問者

お礼

早速のご回答、ありがとうございました。 そのままでは無理なのですね。 「ルールをすべて書く」方法(及びその簡略化)について 試してみることにします。

その他の回答 (1)

  • wormhole
  • ベストアンサー率28% (1626/5665)
回答No.1

all: XML1.html XML2.html XML3.html matome.xml %.html: %.xml <tab>msxsl $< HTML.xsl -o $@ XML1.html: XML1.xml XML2.html: XML2.xml XML3.html: XML3.xml matome.xml: KetsugouXML.xml <tab>msxsl $< matome.xsl -o $@ でできませんか?(変数使うようにするのはご自分でどうぞ)

hzd00430
質問者

お礼

ありがとうございます。できました! できれば複数の変換パターンがある場合についても おしえていただけませんでしょうか?

hzd00430
質問者

補足

これに加え、別のスタイルシートで変換するグループXML11.xml、XML12.xml、XML13.xmlがある場合はどうすればよいでしょうか? msxsl XML11.xml HTML2.xsl -o XML11.html

関連するQ&A