vaffel | ||
---|---|---|
Generell informasjon | ||
programtype | Programmeringsverktøy , Konstruksjonssystem | |
utvikler | Thomas Nagy | |
Første utgivelse | 21. januar 2007 (15 år, 8 måneder og 28 dager) | |
Tillatelse | BSD-lisens | |
Teknisk informasjon | ||
Planlagt inn | python | |
Versjoner | ||
Siste stabile versjon | 1.7.2 (5. august 2012 (10 år, 2 måneder og 13 dager)) | |
Lenker | ||
Offesiell nettside kodelager | ||
Waf er et verktøy som hjelper til automatisk å konfigurere kompilering og installasjon av andre programmer eller biblioteker (build).
Generell
krav
Språkstøtte:
Det var rundt år 2005, KDE -prosjektet brukte Autotools som hovedbyggsystem i lang tid. Autotools har en arkitektur som er vanskelig å forstå, og har blitt kalt "auto-hell"., [ 1 ] KDE vurderte å flytte fra Autotools til SCons .
Thomas Nagy hadde laget et automatisert byggeverktøy kalt BKsys som ble designet for å sitte på toppen av SCons , og gir et høyere nivå av autoverktøy-lignende funksjonalitet. Når Thomas Nagy bestemmer seg for at de grunnleggende problemene med SCons (spesielt dårlig skalerbarhet) var for komplekse og tidkrevende å fikse, begynner han en fullstendig omskriving kalt "Waf".
Waf fikk litt oppmerksomhet da prosjektet ved KDE bestemte seg for å bruke BKsys (og senere WAF) som sitt hovedbyggsystem, selv om den avgjørelsen senere ble reversert til fordel for CMake fordi BKsys ikke klarte å løse problemene med SCons. , og Waf var fortsatt i et veldig tidlig utviklingsstadium (pre-alfa) på den tiden. [ 1 ]
Nedenfor er et veldig enkelt wscript, som vil inkludere en kilde kalt "hello-world.c" som bruker standard C-kompilatoren.
topp = '.' ut = 'bygge' def set_options ( opt ): opt . tool_options ( 'compiler_cc' ) def configure ( conf ): conf . check_tool ( 'compiler_cc' ) def build ( bld ): bld ( source = 'hello-world.c' , target = 'hello-world' , features = 'cc cprogram' )Prosjektet er bygget med følgende kommando:
waf configure build