#%Module1.0##################################################################### ## # Diese Datei wird von einem Tcl Interpreter gelesen. # Mehr Informationen bekommt man mit # # module add modules # man modulefile # set PLATFORM [exec /software/Modules/bin/platform] # Dieser Text wird bei 'module help' angezeigt. Typische Quellen sind # die ersten paar Zeilen der man-pages, des info-files oder der # README. Sinn dieses Blocks ist es zu erklären was das Programm # macht und wie man es benutzt. proc ModulesHelp { } { puts stderr "\tThe XXX is the foo bar Manipulation Program, a layer-capable," puts stderr "\tPhotshop(TM)-like software for such tasks as photo retouching, image" puts stderr "\tcomposition and image authoring. It works on many operating systems," puts stderr "\tin many languages.\n" } # Dieser Text wird bei 'module whatis' angezeigt. kann maximal 56 # Zeichen lang sein. Eine gute Quelle ist die kurz-Beschreibung aus # den man-pages. module-whatis "the GNU foo bar Program." # Module, die nicht gleichzeitig geladen werden können. Jedes Modul # hat normalerweise mindestens einen Konflikt mit anderen Versionen # des gleichen Moduls conflict xxx # Include-Datei, in der all KOGS::* Funktionen definiert sind --- # sollte nur geladen werden, wenn man sie auch braucht! source /software/Modules/lib/KOGS.tcl # Abhängigkeiten. Ein guter Startpunkt sind die Module, die zur # Compile-Zeit (vom build Skript) geladen waren. Genaueres (und man # sollte das so genau wie möglich machen) findet man mit # # ldd /software/xxx-a.bb/$PLATFORM/bin/* | sort -u # # raus KOGS::dep zlib # falls bestimmte Versionen benötigt werden (letzte ist default): KOGS::dep qt-3 {2.3 3.3} # Environment Variabeln. Natürlich sollten nur die gesetzt werden, # die es auch gibt. prepend-path PATH /software/xxx-a.bb/$PLATFORM/bin prepend-path LD_LIBRARY_PATH /software/xxx-a.bb/$PLATFORM/lib prepend-path MANPATH /software/xxx-a.bb/man prepend-path INFOPATH /software/xxx-a.bb/info prepend-path PKG_CONFIG_PATH /software/xxx-a.bb/$PLATFORM/lib/pkgconfig KOGS::prepend-flags CPPFLAGS -I/software/xxx-a.bb/include KOGS::prepend-flags LDFLAGS -L/software/xxx-a.bb/$PLATFORM/lib # Alternativ kann man auch die (zur Zeit noch experimentelle) Funktion # # KOGS::scan-prefix /software/xxx-a.bb # # verwenden, die PLATFORM und alle obigen Variablen setzt.