複数の小さな実行可能ファイルで構成されるプロジェクトに取り組んでいます。実行可能ファイルは、ターミナル (またはコマンド プロンプト) から実行することを意図しており、任意のプログラミング言語で記述できます。インタープリター言語で書かれたものには unixy システム用のシバン行がありますが、それらのファイル拡張子は Windows の PATHEXT 環境変数に追加されます。
すべてのプログラミング言語と両方の主要なプラットフォーム グループで実行可能ファイルを一貫して使用するには、unixy システムで解釈されたプログラムのファイル名からファイル拡張子を削除する必要があります。(「一貫した使用法」とは、ファイル拡張子を指定する必要なく、プログラムの名前を入力して起動することを意味します。)
具体的には、次の CMakeLists ファイルのようなものを記述したとします。
project (Mixed Example)
add_executable (banana banana.cpp)
add_executable (grape grape.hs)
add_script? (orange orange.py)
add_script? (strawberry strawberry.lua)
install (TARGETS banana grape orange strawberry DESTINATION bin)
次に、 と を通常の方法でコンパイルし、プラットフォームに応じて と のファイル拡張子を条件付きで削除したいと考えてbanana.cpp
います。したがって、UNIX システムではディレクトリに次のファイルが含まれている必要があります。grape.hs
orange.py
strawberry.lua
bin
banana grape orange strawberry
Windows では次のようになります。
banana.exe grape.exe orange.py strawberry.lua
それ、どうやったら出来るの?