fbpx
Wikipedia

Waf

Waf es una herramienta que ayuda a configurar automáticamente la compilación y la instalación de otros programas o bibliotecas (build).

Waf
Información general
Tipo de programa Herramienta de programación, Sistema de construcción
Desarrollador Thomas Nagy
Lanzamiento inicial 21 de enero de 2007 (14 años, 6 meses y 13 días)
Licencia Licencia BSD
Información técnica
Programado en Python
Versiones
Última versión estable 1.7.2 5 de agosto de 2012 (8 años, 11 meses y 29 días)
Asistencia técnica
Enlaces
Sitio web oficial
Repositorio de código

Funciones

General

  • Es portable a sistemas Unix y no-Unix.
  • Es ligero.
  • Ofrece un lenguaje de programación real (similar a SCons).
  • Soporta objetivos estándar: configurar, compilar, limpiar, instalar y desinstalar.

Requerimientos

  • No requiere instalación: el script WAF (menos de 100KB) puede ser distribuido y utilizado directamente.
  • Sólo necesita a Python como dependencia externa.
  • No requiere sh (a diferencia de GNU Autotools).
  • No requiere de conocimientos acerca de M4 (a diferencia de GNU Autotools).

Soporte de lenguajes:

  • Preprocesador de dependencias C/C++.
  • Soporte para programas híbridos en OCaml, en programas de GNOME.
  • Soporte para el lenguaje de programación D (tanto GDC y dmd son compatibles).
  • Proyectos escritos en vala son soportados ( como ).
  • Información en pantalla colorida y barra de progreso.
  • Los scripts son módulos de Python.
  • Esquema modular de configuración con análisis personalizable en línea de comandos.
  • Modo demonio para el historial de recompilación.
  • Busca archivos fuente de forma inteligente para facilitar el mantenimiento del script .
  • Soporta caché de objetos global para evitar compilaciones innecesarias.
  • Soporta la ejecución de pruebas(test) en los programas al final de la compilación.

Historia

Era alrededor del año 2005, el proyecto KDE usó durante mucho tiempo el Autotools como su principal sistema de construcción. Autotools tiene una arquitectura que es difícil de comprender, y ha sido apodado "auto-infierno".,[1]​ en KDE estaban considerando la posibilidad de pasar de Autotools a SCons.

Thomas Nagy había creado una herramienta de construcción automatizada llamada BKsys que fue diseñada para colocarse encima de SCons, proporcionando mayor nivel de funcionalidad similar a la de autotools. Cuando Thomas Nagy decide que los problemas fundamentales de SCons (sobre todo la mala escalabilidad) eran demasiado complejos y requerían mucho tiempo para arreglarse, comienza una reescritura completa llamada "Waf".

Waf fue objeto de un poco de atención cuando el proyecto en KDE decidieron utilizar BKsys (y más tarde WAF) como su principal sistema de construcción, aunque más tarde, esa decisión fue revocada en favor de CMake porque BKsys no pudo resolver los problemas de SCons, y Waf todavía estaba en una fase muy temprana de desarrollo (pre-alfa) en ese momento.[1]

Ejemplo Waf archivo

A continuación se muestra una wscript muy simple, que incluirá una fuente llamada "hola-mundo.c" usando el compilador C por defecto.

top = '.' out = 'build' 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') 

El proyecto se construye con el siguiente comando:

waf configure build 

Véase también

Referencias

  1. ¿Por qué el proyecto KDE cambió a CMake(ingles)

Enlaces externos

  • Waf página de inicio
  • GNOME, usado WAF?
  • Proyectos de Uso Waf
  •   Datos: Q2577311

herramienta, ayuda, configurar, automáticamente, compilación, instalación, otros, programas, bibliotecas, build, información, generaltipo, programaherramienta, programación, sistema, construccióndesarrolladorthomas, nagylanzamiento, inicial21, enero, 2007, año. Waf es una herramienta que ayuda a configurar automaticamente la compilacion y la instalacion de otros programas o bibliotecas build WafInformacion generalTipo de programaHerramienta de programacion Sistema de construccionDesarrolladorThomas NagyLanzamiento inicial21 de enero de 2007 14 anos 6 meses y 13 dias LicenciaLicencia BSDInformacion tecnicaProgramado enPythonVersionesUltima version estable1 7 2 5 de agosto de 2012 8 anos 11 meses y 29 dias Asistencia tecnicaEnlacesSitio web oficial Repositorio de codigo editar datos en Wikidata Indice 1 Funciones 2 Historia 3 Ejemplo Waf archivo 4 Vease tambien 5 Referencias 6 Enlaces externosFunciones EditarGeneral Es portable a sistemas Unix y no Unix Es ligero Ofrece un lenguaje de programacion real similar a SCons Soporta objetivos estandar configurar compilar limpiar instalar y desinstalar Requerimientos No requiere instalacion el script WAF menos de 100KB puede ser distribuido y utilizado directamente Solo necesita a Python como dependencia externa No requiere sh a diferencia de GNU Autotools No requiere de conocimientos acerca de M4 a diferencia de GNU Autotools Soporte de lenguajes Preprocesador de dependencias C C Soporte para programas hibridos en OCaml en programas de GNOME Soporte para el lenguaje de programacion D tanto GDC y dmd son compatibles Proyectos escritos en vala son soportados como Val a IDE Informacion en pantalla colorida y barra de progreso Los scripts son modulos de Python Esquema modular de configuracion con analisis personalizable en linea de comandos Modo demonio para el historial de recompilacion Busca archivos fuente de forma inteligente para facilitar el mantenimiento del script Soporta cache de objetos global para evitar compilaciones innecesarias Soporta la ejecucion de pruebas test en los programas al final de la compilacion Historia EditarEra alrededor del ano 2005 el proyecto KDE uso durante mucho tiempo el Autotools como su principal sistema de construccion Autotools tiene una arquitectura que es dificil de comprender y ha sido apodado auto infierno 1 en KDE estaban considerando la posibilidad de pasar de Autotools a SCons Thomas Nagy habia creado una herramienta de construccion automatizada llamada BKsys que fue disenada para colocarse encima de SCons proporcionando mayor nivel de funcionalidad similar a la de autotools Cuando Thomas Nagy decide que los problemas fundamentales de SCons sobre todo la mala escalabilidad eran demasiado complejos y requerian mucho tiempo para arreglarse comienza una reescritura completa llamada Waf Waf fue objeto de un poco de atencion cuando el proyecto en KDE decidieron utilizar BKsys y mas tarde WAF como su principal sistema de construccion aunque mas tarde esa decision fue revocada en favor de CMake porque BKsys no pudo resolver los problemas de SCons y Waf todavia estaba en una fase muy temprana de desarrollo pre alfa en ese momento 1 Ejemplo Waf archivo EditarA continuacion se muestra una wscript muy simple que incluira una fuente llamada hola mundo c usando el compilador C por defecto top out build 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 El proyecto se construye con el siguiente comando waf configure buildVease tambien EditarCMake GNU build system SConsReferencias Editar a b Por que el proyecto KDE cambio a CMake ingles Enlaces externos EditarWaf pagina de inicio GNOME usado WAF Proyectos de Uso Waf Datos Q2577311Obtenido de https es wikipedia org w index php title Waf amp oldid 125249169, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos