Ich arbeite an einem Projekt, das aus mehreren kleinen ausführbaren Dateien besteht. Die ausführbaren Dateien werden vom Terminal (oder der Eingabeaufforderung) ausgeführt und können in einer beliebigen Programmiersprache geschrieben werden. Diejenigen, die in interpretierten Sprachen geschrieben sind, haben eine Shebang-Linie für Unixy-Systeme, während ihre Dateierweiterung unter Windows zur PATHEXT-Umgebungsvariablen hinzugefügt wird.
Um die Verwendung der ausführbaren Dateien über alle Programmiersprachen und beide großen Plattformgruppen hinweg konsistent zu machen, muss ich die Dateierweiterung vom Dateinamen der interpretierten Programme auf Unixy-Systemen entfernen. (Mit "konsistente Verwendung" meine ich: Geben Sie einfach den Namen des Programms ein, um es zu starten, ohne die Dateierweiterung angeben zu müssen.)
Um mehr ins Detail zu gehen, nehmen wir an, ich schreibe etwas wie die folgende CMakeLists-Datei:
%Vor% Dann möchte ich banana.cpp
und grape.hs
auf die übliche Weise kompilieren, während ich möchte, dass die Dateierweiterungen von orange.py
und strawberry.lua
bedingt entfernt werden, abhängig von der Plattform. Daher sollte das Verzeichnis bin
folgende Dateien auf einem Unixy-System enthalten:
und die folgenden unter Windows:
%Vor%Wie mache ich das?