Files
harbour-core/utils/hbmk2/doc/hbmk2.es_419.md
2017-05-03 09:11:48 +00:00

52 KiB

Harbour Make (hbmk2) 3.2.0dev (r2013-04-03 03:33)
Copyright (c) 1999-2013, Viktor Szakats
http://harbour\-project\.org/
Traducción (es_419): Guillermo Varona Silupú <gvaronas@gmail.com>

Sintáxis:

hbmk2 [opciones] [<script[s]>] <src[s][.prg|.c|.obj|.o|.rc|.res|.def|.po|.pot|.hbl|@.clp|.d|.ch]>

Descripción:

hbmk2 es una herramienta integrada y portable, que permite crear varios tipos de binarios ejecutables (ejecutable, biblioteca dinámica, biblioteca estática, binario portable Harbour) desde múltiples tipos de archivos fuente (C, C++, Objective-C, Harbour, traducciones gettext, recursos Windows). 'Integrada' significa que un único proyecto hbmk2 puede controlar todos o la mayoría de los aspectos del proceso de construcción. 'Portable' significa que un único proyecto hbmk2 puede controlar la construcción en todos los SO soportados y a través de todos los compiladores C soportados. Apunta además a cubrir la mayoría de las tareas de construcción mediante simples y cortos archivos de proyecto (opciones). hbmk2 soporta además proyectos C/C++/Objective-C puros -no-Harbour-. Para lograr estos objetivos, hbmk2 auto-detectará Harbour, el compilador C y otras herramientas requeridas, para luego configurarlas y ejecutarse adecuadamente. hbmk2 permite extender, via plugins, los tipos de archivo fuente soportados.
Ademas de construir ejecutables, hbmk2 puede ejecutar directamente scripts Harbour (desde fuente o pre-compilados), y ofrece además una consola de comandos interactiva.

Opciones:

  • -o<outname> nombre de archivo de salida

  • -l<libname> enlaza con biblioteca <libname>. <libname> no debe incluir ruta, extensión o prefijo 'lib' (excepto que sea parte del nombre). No agregue bibliotecas principales de Harbour, estas son agregadas automáticamente cuando se necesitan. Si <libname> comienza con un caracter '-', la biblioteca será removida de la lista de bibliotecas principales al momento de enlazar.

  • -L<libpath> ruta adicional para buscar librerías

  • -i<p>|-incpath=<p> ruta adicional para buscar cabeceras

  • -static|-shared enlazar con librerías estáticas/compartidas

  • -gt<name> enlaza con el driver GT GT<name>, puede repetirse para enlazar con mas GTs. El primero será utilzado por defecto en tiempo de ejecución

  • -inc[-] habilita modo de compilación incremental

  • -hbexe crea ejecutable (por defecto)

  • -hblib crear librería estática

  • -hbdyn crea biblioteca dinámica (sin enlace a Harbour VM)

  • -hbdynvm crear librería dinámica (con enlace a Harbour VM)

  • -mt|-st enlazar con soporte multi/single-thread Harbour VM

  • -gui|-std crear ejecutable GUI/console

  • -main=<mainfunc> reemplaza nombre de función/procedimento inicial

  • -request=<func> fuerza función/procedimiento a enlazarse

  • -fullstatic enlazar con todas las librerías estáticas

  • -pic[-] crear código objeto independiente de la posición (siempre activado en los modos -hbdyn/-hbdynvm)

  • -[full|fix]shared crear para compartir archivos binarios Harbour sin/con referencia absoluta a librerías de Harbour (por defecto: 'fullshared' cuando Harbour se instala en ubicación del sistema, 'fixshared' en otro caso) (opción fix/full en *nix solamente)

  • -nulrdd[-] enlazar con nulrdd

  • -debug[-] adicionar/excluir información de debug de compilador C. Para activar el debug de Harbour utilize la Opción -b como de costumbre.

  • -optim[-] alternar optimizaciones del compilador C (por defecto: on)

  • -cpp[-] fuerza modo C++/C

  • -cpp=<value> selecciona modo C++. Los valores permitidos son: def, yes, no

  • -map[-] crear (o no) un archivo map

  • -implib[-] crear (o no) una biblioteca de importación (en modo -hbdyn/-hbexe). El nombre tendrá un sufijo añadido.

  • -implib=<output> crear biblioteca de importación (en modo -hbdyn/-hbexe) Nombre de <output> (por defecto: igual que la salida)

  • -ln=<link> crea enlace simbólico apuntando a <output> (<link> se asocia a <output>)

  • -strip[-] desmontar (no desmontar) binarios

  • -trace[-] mostrar comandos ejecutados

  • -beep[-] activa (o desactiva) beep simple en caso de éxito, doble beep en caso de falla

  • -ignore[-] ignore errores cuando ejecute herramienta de compilador (por defecto: off)

  • -hbcppmm[-] reemplaza las funciones de administración de memoria estandar de C++ con las de Harbour

  • -winuni[-] seleccionar entre modo de compilación Unicode (WIDE) y ANSI (por defecto: ANSI) (sólo Windows. Para WinCE siempre se establece en UNICODE.)

  • -nohblib[-] no use librerías estáticas del núcleo de Harbour al enlazar

  • -nodefgt[-] no enlaza GTs por defecto (efectivo en modo -static)

  • -nolibgrouping[-] desactivar agrupamiento de LIBs en compiladores basados en gcc.

  • -nomiscsyslib[-] no agregue lista adicional de librerías del sistema a lista de librerías por defecto

  • -traceonly mostrar comandos a ser ejecutados, pero no ejecutarlos

  • -warn=<level> Establece el nivel de advertencia del compilador C
    <level> puede ser: max, yes, low, no, def (default: yes)

  • -safe[-] Activa opciones seguras en compilador/enlazador C (por defecto: activado en Windows, desactivado en otros sistemas)

  • -compr=<level> comprime ejecutable/librería dinamica (necesita la herramienta UPX)
    <level> puede ser: yes, no, min, max

  • -run[-] ejecutar/no ejecutar aplicativo generado.

  • -vcshead=<file> generar archivo de cabecera .ch con información del repositorio local. Actualmente están soportados Git, SVN, Mercurial, Bazaar, Fossil, CVS y Monotone. El archivo de cabecera generado definirá la constante de preprocesador _HBMK_VCS_TYPE_ con el nombre del SCV detectado, y _HBMK_VCS_ID_ con el ID único del repositorio local. Si no se detecta un SCV, un número secuencial será incrementado cada vez que se construya.

  • -tshead=<file> generar archivo de cabecera .ch con información de fecha/hora. Cabecera generado definirá macros _HBMK_BUILD_DATE_, _HBMK_BUILD_TIME_, _HBMK_BUILD_TIMESTAMP_ con fecha/hora de creación de archivo.

  • -icon=<file> establece <file> como ícono de la aplicación. <file> debe ser un formato soportado en la plataforma destino (puede no ser soportado por algunas plataformas/compiladores). En Windows, es implementado generando y enlazando un archivo de recursos.

  • -manifest=<file> incrustar manifiesto <file> en ejecutable/lib dinámica (sólo Windows)

  • -sign=<key> firma el ejecutable con <key> (solo Windows y Darwin). En Windows, se utiliza sigtntool.exe (incluido en el SDK de MS Windows) o posign.exe (parte de Pelees C 7), en ese orden, ambos auto-detectados.

  • -signpw=<pw> use <pw> como contraseña al firmar ejecutables (solo Windows y Darwin)

  • -instfile=<g:file> anadir <archivo> a la lista de archivos que desea copiar a la ruta especificada por la opción -instpath. <g> es un grupo opcional de copia (distingue mayúsculas y minúsculas), debe haber al menos dos caracteres. En caso de que no se especifica <archivo>, la lista de archivos en ese grupo se vaciará.

  • -instpath=<g:path> copia el/los archivo(s) objetivo a la ruta <path>. Si <path> es un directorio, debería terminar con un separador de rutas, en este caso los archivos especificados en la opción '-instfile' también son copiados. Puede ser especificado varias veces. <g> es grupo de copia opcional, debe tener al menos dos caracteres de largo. El objetivo final será copiado automaticamente al grupo de copia por defecto (sin asignación de <g>). Existen los siguientes grupos de copia ya incluidos: 'depimplib' para las bibliotecas importadas y 'depimplibsrc' para los archivos fuente de las bibliotecas importadas (.dll), ambos pertenecientes a las dependencias.

  • -instforce[-] copia archivo(s) destino a ruta de instalación incluso si está(n) actualizado(s)

  • -depimplib[-] activar (o desactivar) la generación de Bibliotecas de Importación para fuentes de biblioteca de importación especificados en la opción -depimplibs= (por defecto: yes)

  • -stop[=<text>] parar sin hacer nada y mostrar <text> si se ha especificado

  • -echo=<text> Muestra texto en la pantalla

  • -pause forzar pause para presionar una tecla en caso de error (solo con driver GT alternativo)

  • -exitstr mostrar resultado de error como texto legible al salir

  • -info activar los mensajes informativos

  • -quiet[-] suprimir todos los mensajes en pantalla

  • -bldf[-] heredar flags de Harbour: todos/ninguno (por defecto)

  • -bldf=[p][c][l] heredar todos los flags .prg/.c/linker (o ninguno) desde construcción de Harbour

  • -F<framework> Enlace con marco <framework> (Sólo Darwin)

  • -prgflag=<f> pasar bandera única al compilador Harbour

  • -cflag=<f> pasar bandera única al compilador C

  • -resflag=<f> pasar bandera única al compilador de recursos (sólo Windows)

  • -ldflag=<f> pasar bandera única al enlazador (ejecutable)

  • -dflag=<f> pasar bandera única al enlazador (librería dinánica)

  • -aflag=<f> pasa flag a linkeditor (lib estática)

  • -iflag=<f> pasar bandera única a comando de creación de biblioteca de importación

  • -signflag=<f> pasar bandera única al comando de firma de código

  • -runflag=<f> pasar bandera única al ejecutable de salida cuando se utiliza la opción -run

  • -cflag+=<f> pasar bandera única al compilador C reemplazando las opciones del compilador C añadidas por el mismo hbmk2. Usar con precaución.

  • -ldflag+=<f> pasar una sola opción al enlazador (ejecutable) después de la lista de bibliotecas. Usar con precaución.

  • -dflag+=<f> pasar una sola opción al enlazador (biblioteca dinámica) después de la lista de bibliotecas. Usar con precaución.

  • -3rd=<f> opciones/flags reservados para herramientas de terceros, siempre ignorado por hbmk2 en sí

  • -env:<e>[<o>[<v>]] alterar el ambiente local. <e> es el nombre de la variable de entorno a alterar. <o> puede ser '=' para establecer/reemplazar, '-' para borrar, '+' para anadir al final de valor existente, '#' para insertar al principio del valor existente. <v> es el valor a poner/agregar/insertar.

  • -jobs=<n> Inicia <n> threads de compilación (solo para plataformas multiproceso)

  • -head=<m> analizando fuente de control de encabezado (en construcción en modo incremental)
    <m> puede ser: nativo (compilador utilizado para extraer las dependencias), completa (por defecto, utiliza analizador de texto simple en el fichero entero), dep, off

  • -rebuild reconstrucción (en modo incremental)

  • -rebuildall reconstruir con sub-proyectos (contrucción en modo incremental)

  • -clean compilación limpia (en modo incremental)

  • -workdir=<dir> directorio de trabajo
    (por defecto: .hbmk/<platform>/<compiler> [*] en modo incremental, directorio temporal del SO de otra manera)

  • -hbcontainer destino de construcción virtual, no crea nada. Útil para crear un .hbp con el solo propósito de referenciar sub-proyectos

  • -hbimplib crear biblioteca de importación (solo Windows)

  • -hbl[=<output>] nombre-de-archivo .hbl resultante. macro %{hb_lng} es aceptada en nombre-de-archivo.

  • -lng=<languages> lista de idiomas a ser reemplazados en %{hb_lng} macros en archivos .pot/.po y nombres de archivos y salida .hbl/.po. Lista separada por comas:
    -lng=en,hu-HU,de

  • -po=<output> crear/actualizar archivo .po desde fuentes. Combinar con anterior archivo .po del mismo nombre.

  • -minipo[-] adicionar (o no) número de versión y referencia de archivo de origen a po. (por defecto: anadirlos)

  • -rebuildpo recrea archivo .po, eliminando todas las entradas obsoletas en el mismo.

  • -hbx=[<.ch>] Crear cabecera Harbour (en formato .hbx) con todos los símbolos externos. Un parámetro vacío lo deshabilita.

  • -autohbc=<.ch:.hbc> <.ch> es un nombre de archivo de cabecera. <.hbc> es un nombre de archivo .hbc para ser incluido automáticamente en caso la cabecera se encuentra en cualquiera de las fuentes compiladas. (EXPERIMENTAL)

  • -deppkgname=<d:n> <d> es el nombre de la dependencia. <n> nombre de la dependencia de un paquete. Se puede especificar varias veces.

  • -depkeyhead=<d:h> <d> es el nombre de la dependencia. <h> es la cabecera clave (.h) de la dependencia de un paquete. Varios encabezados alternativos pueden ser especificados.

  • -depoptional=<d:f> <d> es el nombre de la dependencia. <f> puede ser 'yes' o 'no', especifica si la dependencia es opcional. Por defecto: no

  • -depcontrol=<d:v> <d> es el nombre de la dependencia. <v> es un valor que controla como se hace la detección. Valores aceptados: no, yes, force, nolocal, local. Por defecto: contenido de envvar HBMK_WITH_<d>

  • -depincroot=<d:r> <d> es el nombre de la dependencia. Establecer <r> como directorio raíz para las rutas especificadas en la opción -depincpath.

  • -depincpath=<d:i> <d> es el nombre de la dependencia. Anadir <i> a la lista de rutas de detección de encabezados.

  • -depincpathlocal=<d:i> <d> es el nombre de la dependencia. Agregue <i> a la lista de detección de rutas de cabeceras, donde <i> apunta a un directorio local del proyecto y que contiene una dependencia incrustada (tambien conocida como "localmente hospedada").

  • -depimplibs=<d:dll> <d> es el nombre de la dependencia. Anadir <dll> a la lista fuente de la biblioteca de importación.

  • -depimplibd=<d:lib> <d> es el nombre de la dependencia. Establecer nombre generado de biblioteca de importación a <lib>

  • -depfinish=<d> <d> es el nombre de la dependencia. Cierra la definición de dependencias y ejecuta la detección, estableciendo las variables macro de filtro predefinidas y las opciones de construcción relacionadas. Opcional, si se omite, la detección tendrá lugar después de procesar todas las opciones.

  • -plugin=<filename> agregar plugin (módulo). <filename> puede ser: .hb, .prg, .hrb

  • -pi=<filename> pasar archivo de entrada a plugins

  • -pflag=<f> pasar bandera única a plugins

Las opciones de mas abajo están disponibles en la línea de comandos:

  • -target=<script> especifica una nueva construcción destino. <script> puede ser .prg (o sin extensión) o .hbp archivo. Tenga en cuenta que los archivos .hbp son automáticamente considerados como construcción destino separados.

  • -hbrun ejecutar la construcción de destino

  • -hbraw parar después de ejecutar compilador Harbour

  • -hbcmp|-clipper para después de la creación de los archivos objeto
    crear un enlace/copia a hbmk2 para hbcmp/clipper resultará el mismo efecto

  • -hbcc acepta raw C flags
    create enlace/copia hbmk2 para hbcc para el mismo efecto

  • -hblnk aceptar flags primas del enlazador

  • -autohbm[-] activar (o desactivar) procesamiento de hbmk.hbm en el directorio actual (por defecto: yes)

  • -hb10 habilita modo de compatibilidad 'Harbour 1.0.x'

  • -hb20 activa el modo de compatibilidad Harbour 2.0.x

  • -hb30 activa el modo de compatibilidad Harbour 3.0.x

  • -xhb habilitar modo xHb

  • -hbc activa modo puro C

  • -rtlink

  • -blinker

  • -exospace emula comportamiento de linkeditor compatible con clipper
    crear link o copiar hbmk2 para rtlink/blinker/exospace resultará el mismo efecto

  • -hbreg[=global] registra script Harbour (.hb) con hbmk2 (solo Windows)

  • -hbunreg[=global] desregistra script Harbour (.hb) desde hbmk2 (solo Windows)

  • -find <text> lista todas las funciones Harbour conocidas conteniendo <text> en su nombre, junto con el paquete al que pertenecen (insensible a mayúsculas/minúsculas, acepta múltiples valores, puede contener caracteres comodín)

  • -hbmake=<file> convierte proyecto hbmake en un archivo .hbp

  • -xbp=<file> convierte proyecto .xbp (xbuild) en un archivo .hbp

  • -xhp=<file> convierte un proyecto .xhp (xMate) en un archivo .hbp

  • --hbdirbin muestra el directorio de binarios de Harbour

  • --hbdirdyn muestra el directorio de bibliotecas dinámicas de Harbour

  • --hbdirlib muestra el directorio de bibliotecas estáticas de Harbour

  • --hbdirinc muestra el directorio de cabeceras de Harbour

  • --hbinfo[=nested] muestra información de la construcción de Harbour. La salida es en formato JSON. Las rutas incluidas siempre contienen barras invertidas. Cada bloque JSON siempre es seguido por un byte 0x0A.

  • -plat=<platform> reemplaza la plataforma destino por defecto (por defecto: automático)

  • -cpu=<cpu> reemplaza la CPU de destino por defecto (por defecto: automática) (EXPERIMENTAL)

  • -comp=<compiler> reemplaza la autodetección del compilador C
    Valor especial:
    - bld: usa la configuración de construcción original (por defecto en *nix)

  • -build=<name> utilizar un nombre de build especifico

  • -lang=<lang> reemplaza lenguaje por defecto. <lang> es un código de lenguaje ISO.

  • -width=<n> establecer el ancho de salida a <n> caracteres (0=sin límite).

  • -shl mostrar nivel de subproyecto en las líneas de salida

  • -viewhelp ayuda extensa en visor de texto.

  • -longhelp ayuda detallada

  • -longhelpmd ayuda extensa en formato Markdown

  • -harbourhelp Ayuda de compilador Harbour (todas las opciones del compilador Harbour son aceptadas como tal por hbmk2)

  • -credits Créditos de compilador Harbour

  • -build Información de construcción de compilador Harbour

  • -version muestra solo versión de cabecera

Las opciones de mas abajo son internas o de desarrollador (no se garantiza compatibilidad):

  • -debugtime mide el tiempo transcurrido durante la construcción
  • -debuginc muestra detalles internos del modo de construcción incremental
  • -debugstub muestra el contenido de todos los archivos fuente generados internamente
  • -debugi18n muestra
  • -debugdepd muestra detalles internos de la búsqueda de dependencia
  • -debugpars muestra todos los parámetros de entrada en orden de procesamiento
  • -debugrte genera un error en tiempo de ejecución

Usted puede enlazar/copiar/renombrar hbmk2 a los siguientes nombres para alterar el modo de operación por defecto:

  • hbrun*|*hbrun modo ejecución de script / consola interactiva
  • hbrund|hbrun*d modo ejecución de script / consola interactiva en modo depuración
  • harbour modo -hbraw (emula compilador - puro - Harbour)
  • clipper modo -hbcmp (emula compilador Clipper)
  • rtlink modo -rtlink (emula enlazador Clipper)
  • exospace modo -rtlink (emula enlazador Clipper)
  • blinker modo -rtlink (emula enlazador Clipper)
  • *10 opción -hb10
  • *20 opción -hb20
  • *30 opción -hb30
  • x* opción -xhb
  • hbcmp*|*hbcmp modo -hbcmp (emula compilador produciendo un objeto binario)
  • hbcc*|*hbcc modo -hbcc (emula compilador C)
  • hblnk*|*hblnk modo -hblnk (emula enlazador C)
  • hbexe*|*hbexe modo -hbexe
  • hblib*|*hblib modo -hblib
  • hbdyn*|*hbdyn modo -hbdyn

Archivos:

  • *.hbp archivo de proyecto. Puede contener cualquier número de opciones de línea de comandos, que deben generar una salida. Las líneas que comienzan con "#" son ignoradas, de otra manera, una nueva línea es opcional y las opciones están separadas por espacio, tal como en la línea de comandos. Se deben encomillar las opciones que contengan espacios. Cada referencia a un archivo .hbp será ejecutada como un sub-proyecto.

  • *.hbm Conjunto de opciones. Puede ser usado para agrupar opciones comunes dentro de un archivo e incluirlo entre los archivos del projecto. Utiliza el mismo formato que los archivos .hbp.

  • *.hbc colección de opciones que acompañan a los componentes (conocidos como 'bibliotecas' o paquetes). Usa una sintaxis diferente a la línea de comandos y a los archivos '.hbp'/'.hbm'. Las líneas que comienzan con "#" son ignoradas, cada directiva debe ser ubicada en líneas separadas.

  • *.ch si se envía como archivo fuente, será usado como cabecera estándar adicional

  • hbmk.hbc archivo .hbc estandar que es automáticamente procesado, si existe. Ubicación(es) posibles (en orden de precedencia) v [*]: %APPDATA%\.harbour, <directorio hbmk2>

  • hbmk.hbm archivo .hbm opcional ubicado en el directorio de trabajo actual, que es automáticamente procesado antes que otras opciones

  • $hb_pkg_dynlib.hbm archivo especial .hbm incrustado dentro de hbmk2. Maneja los detalles de la creación de una librería dinámica (al estilo de contribuciones Harbour).

  • $hb_pkg_install.hbm archivo especial .hbm incrustado dentro de hbmk2. Maneja los detalles de la instalación de construcciones destino y paquetes relacionados en las instalaciones estándar (al estilo de contribuciones Harbour).

  • *.hb script Harbour

  • *.hrb Binario portable Harbour (aka script precompilado Harbour)

  • hbstart.hb Script de inicio Harbour para la consola interactiva. Es ejecutado automáticamente al iniciar la consola, si existe. Ubicación(es) posible(s) (en orden de precedencia) [*]: .\, %APPDATA%\.harbour, <directorio hbmk2>

  • shell plugins plugins .hb y .hrb para la consola interactiva Harbour. Pueden residir en [*]: %APPDATA%\.harbour\

  • .hb_history guarda el historial de comandos del intérprete de comandos de Harbour. Puede deshabilitar el historial haciendo que la primera linea sea 'no' (sin comillas y con salto de línea). Se guarda en [*]: %APPDATA%\.harbour\

  • hb_extension lista de extensiones para cargar en el interprete de comandos interactivo de Harbour. Una extensión por línea, y se ignora todo lo que hay detrás del caracter '#'. Nombre de fichero alternativo en MS-DOS: hb_ext.ini. Reside en [*]: %APPDATA%\.harbour\

Variables macro:

  • ${hb_root} directorio de hbmk2
  • ${hb_dir} directorio del archivo en que es usado
  • ${hb_dirname} directorio raiz del archivo en que es utilizado
  • ${hb_name} nombre del archivo en que es usado (sin directorio ni extensión)
  • ${hb_self} nombre completo del archivo en que es utilizado
  • ${hb_curdir} directorio de trabajo actual
  • ${hb_tempdir} Directorio del sistema operativo para archivos temporales
  • ${hb_targetname} nombre del proyecto (sin directorio ni extensión). Devuelve .adhoc. si no existe archivo de proyecto.
  • ${hb_targettype} tipo de proyecto (hbexe, hblib, hbdyn, hbdynvm, hbimplib, hbppo, hbhrb, hbcontainer)
  • ${hb_plat} plataforma seleccionada
  • ${hb_comp} compilador C seleccionado
  • ${hb_comp_ver} versión de compilador C
  • ${hb_build} nombre de construcción
  • ${hb_cpu} CPU seleccionada
  • ${hb_work} directorio de trabajo base por defecto
  • ${hb_workdynsub} subdirectorio de trabajo por defecto para destino de bibliotecas dinámicas
  • ${hb_dynprefix} prefijo de librería dinámica
  • ${hb_dynsuffix} sufijo de librería dinámica
  • ${hb_dynext} extensión de librería dinámica
  • ${hb_ver} Versión Harbour en formato triple byte hexadecimal, p.e: 030200
  • ${hb_verstr} Versión Harbour en formato legible <major>.<minor>.<release><status>. ej.: 3.2.0dev
  • ${hb_major} Número mayor de versión Harbour
  • ${hb_minor} Número menor de versión Harbour
  • ${hb_release} Número de versión de Harbour liberada
  • ${hb_status} estado de versión Harbour
  • ${hb_revision} revisión Harbour
  • ${hb_host_plat} plataforma huésped Harbour
  • ${hb_host_plat_unix} devuelve '1' si la plataforma huésped Harbour es compatible *nix
  • ${hb_bin} directorio de binarios Harbour
  • ${hb_lib} Directorio de librerías estáticas de Harbour
  • ${hb_lib3rd} Directorio de librerías estáticas de terceros de Harbour
  • ${hb_dyn} Directorio de librerías dinámicas de Harbour
  • ${hb_inc} directorio de cabeceras Harbour
  • ${hb_addons} directorio base de complementos de Harbour
  • ${hb_first} nombre del archivo fuente que contiene la función principal (sin directorio ni extensión)
  • ${hb_outputdir} directorio de salida
  • ${hb_outputname} nombre de la salida (sin extensión)
  • ${hb_level} nivel de recursión de sub-proyecto
  • ${<depname>} devuelve el directorio cabecera de la dependencia <depname> fue detectado, o '1' si no se ha detectado.
  • ${<envvar>} devuelve el valor de la variable de entorno <envvar>

Filtros (puede combinar y/o negarlos):

  • {<platform>} plataforma destino. Donde <platform> puede ser cualquier valor aceptado por la opción -plat= .
  • {<compiler>} compilador C destino. Donde <compiler> puede ser cualquier valor aceptado por la opción -comp= .
  • {<cpu>} CPU destino. Donde <cpu> puede ser uno de: x86, x86_64, ia64, arm, mips, sh
  • {<targettype>} tipo de construcción destino. Donde <targettype> es cualquiera de los valores retornados por la variable macro ${hb_targettype}.
  • {mt} construcción destino es multihilo (ver opción -mt)
  • {st} construcción destino es monohilo (ver opción -st)
  • {gui} GUI destino (vea opción -gui)
  • {std} consola destino (vea opción -console)
  • {debug} El nivel de depuración C está habilitado (ver la opción -debug-)
  • {nodebug} El nivel de depuración C está deshabilitado (vea la opción -debug-)
  • {shared} construcción compartida (ver -shared y opciones relacionadas)
  • {static} construcción estática (ver -static y opciones relacionadas)
  • {lngcpp} modo C++ forzado (ver opción -cpp)
  • {lngc} modo C forzado (ver opción -cpp-)
  • {winuni} modo UNICODE (WIDE) de Windows (ver opción -winuni)
  • {winansi} modo ANSI de Windows (ver opción -winuni-)
  • {unix} plataforma destino es compatible *nix (bsd, hpux, sunos, beos, qnx, android, vxworks, symbian, linux, darwin, cygwin, minix, aix)
  • {allwin} plataforma destino es compatible con Windows (win, wce)
  • {allgcc} compilador C destino pertenece a la familia gcc (gcc, mingw, mingw64, mingwarm, djgpp, gccomf, clang, open64, pcc)
  • {allmingw} compilador C destino es mingw* (mingw, mingw64, mingwarm)
  • {allmsvc} compilador C destino es msvc* (msvc, msvc64, msvcia64, msvcarm)
  • {allbcc} compilador C destino es bcc* (bcc, bcc64)
  • {allpocc} compilador C destino es pocc* (pocc, pocc64, poccarm)
  • {allicc} compilador C destino es icc* (icc, iccia64)
  • {hb10} Modo de compatibilidad Harbour 1.0.x (ver opción -hb10)
  • {hb20} Modo de compatibilidad Harbour 2.0.x (ver opción -hb20)
  • {hb30} Modo de compatibilidad Harbour 3.0.x (ver opción -hb30)
  • {xhb} mode xhb (ver opción -xhb)
  • {hb_ispath='<file|dir>'} el filtro pasará si el nombre de <file> o <dir> existe en disco.
  • {MACRO} el filtro pasará si el valor de ${MACRO} no está vacio y no es igual a '0' o 'no' (insensible a minúsculas y mayúsculas)
  • {MACRO='<value>'} el filtro pasará si el valor de ${MACRO} es igual a <value> (insensible a minúsculas y mayúsculas)
  • {MACRO>'<value>'} el filtro pasará si el valor de ${MACRO} es mayor a <value> (insensible a minúsculas y mayúsculas)
  • {MACRO<'<value>'} el filtro pasará si el valor de ${MACRO} es menor a <value> (insensible a minúsculas y mayúsculas)

Constantes predefinidas en fuentes.

  • __HBSCRIPT__HBMK_PLUGIN cuando un script .hb es compilado como plugin hbmk2

  • __HBEXTREQ__ cuando una fuente .hbx existe en un proyecto (disponible en las fuentes Harbour)

  • HBMK_HAS_<hbcname> cuando el paquete <hbcname>.hbc se enlaza al objetivo final. El valor se obtiene de la entrada 'version=' del archivo .hbc, convertido a número decimal, '1' si no se especifica. (disponible en el código fuente de Harbour)

  • HBMK_HAS_<depname> cuando la dependencia <depname> ha sido detectada (disponible en fuentes C)

  • __HBSCRIPT__HBSHELL cuando un archivo fuente Harbour es ejecutado como un script de consola

  • <standard Harbour> __PLATFORM__*, __ARCH*BIT__, __*_ENDIAN__, etc...

Constantes predefinidas en ficheros de construcción (están disponibles luego de '-depfinish=<depname>' / 'depfinish=<depname>'):

  • HBMK_HAS_<depname> cuando la dependencia <depname> ha sido detectada
  • HBMK_DIR_<depname> devuelve el directorio cabecera en donde <depname> fue detectado, o un valor vacío so no se ha detectado.
  • HBMK_HAS_<depname>_LOCAL cuando la dependencia <depname> ha sido detectada en una ubicación establecida por la opción -depincpathlocal=

Variables de entorno

  • HBMK_OPTIONS acepta cualquier opción como si se pasaran al inicio de la línea de comandos

  • HB_PLATFORM acepta los mismos valores que la opción -plat=

  • HB_COMPILER acepta los mismos valores que la opción -comp=

  • HB_CPU acepta los mismos valores que la opción -cpu=

  • HB_BUILD_NAME acepta los mismos valores que la opción -build=

  • HB_LANG acepta los mismos valores que la opción -lang=

  • HB_USER_LIBS acepta los mismos valores (separador por espacio) que la opción -l

  • HB_USER_LIBPATHS acepta los mismos valores (separador por espacio) que la opción -L

  • HB_USER_PRGFLAGS opciones para pasar al compilador Harbour (antes de las opciones de línea de comandos)

  • HB_USER_CFLAGS opciones para pasar al compilador C (antes de las opciones de línea de comandos)

  • HB_USER_RESFLAGS opciones para pasar al compilador de recursos (antes de las opciones de línea de comandos) (solo Windows)

  • HB_USER_LDFLAGS opciones para pasar al enlazador (ejecutable) (antes de las opciones de línea de comandos)

  • HB_USER_DFLAGS opciones para pasar al enlazador (biblioteca dinámica) (antes de las opciones de línea de comandos)

  • HB_USER_AFLAGS opciones para pasar al enlazador (biblioteca estática) (antes de las opciones de línea de comandos)

  • HB_COMPILER_VER reemplaza la autodetección de versión de compilador C (solo familias gcc y msvc) . Formato: <15><00>[.<00>] = <major><minor>[.<revision>]

  • HB_CCPATH reemplaza directorio del ejecutable del compilador C (solo familias del compilador gcc)

  • HB_CCPREFIX reemplaza prefijo del ejecutable del compilador C (solo familias del compilador gcc)

  • HB_CCSUFFIX reemplaza sufijo del ejecutable del compilador C (solo familias del compilador gcc)

  • HB_INSTALL_PREFIX reemplaza el directorio base de instalación de Harbour

  • HB_INSTALL_ADDONS reemplaza el directorio base de complementos de Harbour

  • HB_EXTENSION lista separada por espacio de extensiones a cargar en la consola Harbour interactiva

directivas .hbc (deben ser escritas en líneas separadas):

  • echo=<msg> mostrar <msg>
  • skip=[<msg>] omite el procesamiento del resto del archivo .hbc. Muestra <msg>, si está especificado.
  • stop=[<msg>] detiene la construcción. Muestra <msg>, si está especificado.
  • sources= agregar lista de archivos de entrada separados por espacio
  • headers= agregar lista de archivos de cabecera .ch separados por espacios como cabeceras estándar
  • libs= agregar lista de bibliotecas separadas por espacio (vea mas en la opción -l)
  • frameworks= agregar lista de frameworks separados por espacio (solo Darwin)
  • requests= agrega lista de símbolos separados por espacio para forzar el enlace a la construcción destino.
  • syslibs= agregar lista de bibliotecas separadas por espacio como bibliotecas de sistema (antes de las bibliotecas regulares)
  • hbcs= incrusta una lista de archivos .hbc separados por espacios. Se aceptan nombres sin extensión. Estas referencias se procesan en el momento.
  • autohbcs= lista de valores separados por espacio como en opción -autohbc=
  • libpaths= lista de rutas de biblioteca adicionales separadas por espacio
  • incpaths= agrega lista de rutas adicionales de cabecera separada por espacio (para Harbour y C)
  • instfiles= lista de valores separados por espacio como en opción -instfile=
  • instpaths= lista de valores separados por espacio como en opción -instpath=
  • prgflags= lista de valores separados por espacio como en opción -prgflag=
  • cflags= lista de valores separados por espacio como en opción -cflag=
  • resflags= lista de valores separados por espacio como en opción -resflag=
  • ldflags= lista de valores separados por espacio como en opción -ldflag=
  • ldflags+= lista de valores separados por espacio como en opción -ldflag+=
  • dflags= lista de valores separados por espacio como en opción -dflag=
  • dflags+= lista de valores separados por espacio como en opción -dflag+=
  • pflags= lista de valores separados por espacio como en opción -pflag=
  • psources= lista de valores separados por espacio como en opción -pi=
  • gui=<bool> opción 'yes' = -gui, 'no' = -std
  • mt=<bool> opción 'yes' = -mt, 'no' = -st
  • pic=<bool> opción 'yes' = -pic, 'no' = -pic-
  • shared=<bool> opción 'yes' = -shared, 'no' = -static
  • shareddef=<bool> similar a shared=, pero funciona solo si el modo shared/static no ha sido establecido con anterioridad
  • fullstatic=<bool> opción 'yes' = -fullstatic, 'no' = -static
  • debug=<bool> opción 'yes' = -debug, 'no' = -debug-
  • optim= opción 'yes' = -optim, 'no' = -optim-
  • nulrdd=<bool> opción 'yes' = -nulrdd, 'no' = -nulrdd-
  • nodefgt=<bool> opción 'yes' = -nodefgt, 'no' = -nodefgt-
  • map=<bool> opción 'yes' = -map, 'no' = -map-
  • hbcppmm=<bool> opción 'yes' = -hbcpmm, 'no' = -hbcpmm-
  • implib=<bool> opción 'yes' = -implib, 'no' = -implib-
  • winuni=<bool> opción 'yes' = -winuni, 'no' = -winuni-
  • strip=<bool> opción 'yes' = -strip, 'no' = -strip-
  • run=<bool> opción 'yes' = -run, 'no' = -run-
  • inc=<bool> opción 'yes' = -inc, 'no' = -inc-
  • safe=<bool> opción 'yes' = -safe, 'no' = -safe-
  • cpp= igual que la opción -cpp=
  • warn= igual que la opción -warn=
  • compr= igual que la opción -compr=
  • head= igual que la opción -head=
  • plugins= lista separada por espacio de hbmk2 plugins a cargar
  • gt=<name> igual que la opción -gt<name>
  • gtdef=<name> establece el GT por defecto a utilizar
  • env= igual que la opción -env:
  • deppkgname= igual que la opción -deppkgname=
  • depkeyhead= igual que la opción -depkeyhead=
  • depoptional= igual que la opción -depoptional=
  • depcontrol= igual que la opción -depcontrol=
  • depincroot= igual que la opción -depincroot=
  • depincpath= igual que la opción -depincpath=
  • depincpathlocal= igual que la opción -depincpathlocal=
  • depimplibs= igual que la opción -depimplibs=
  • depimplibd= igual que la opción -depimplibd=
  • depfinish= igual que la opción -depfinish=
  • name= Nombre de paquete
  • description= descripción del paquete
  • version=<x.y.z> número de versión del paquete, donde x,y,z >= 0 <= 255. Por defecto 0.0.1, si no es especificado.
  • keywords= lista de palabras clave separadas por espacio
  • licences= lista de licencias separadas por espacio
  • repository= lista separada por espacio de referencias a repositorios fuente

API de plugin:
('hbmk' es la variable de contexto recibida por la función principal del plugin)

  • hbmk_Register_Input_File_Extension( hbmk, <cExt> ) -> NIL
    Registra extensión de archivo de entrada para enviar al plugin (por defecto todas las extensiones de archivo desconocidas son pasadas al compilador Harbour).
  • hbmk_AddInput_PRG( hbmk, <cFileName> ) -> NIL
    Agregar un archivo Harbour al proyecto.
  • hbmk_AddInput_C( hbmk, <cFileName> ) -> NIL
    Agregar un archivo C al proyecto.
  • hbmk_AddInput_CPP( hbmk, <cFileName> ) -> NIL
    Agregar un archivo C++ al proyecto.
  • hbmk_AddInput_RC( hbmk, <cFileName> ) -> NIL
    Agregar un archivo de recursos Windows al proyecto.
  • hbmk_AddInput_OBJ( hbmk, <cFileName> ) -> NIL
    Agregar un archivo binario objeto al proyecto.
  • hbmk_AddInput_INSTFILE( hbmk, <cFileName>, [<cGroup>] ) -> NIL
    Agrega un archivo a instalar, con un nombre de grupo opcional -instpath=
  • hbmk_OutStd( hbmk, <cText> ) -> NIL
    Texto de salida a stdout.
  • hbmk_OutErr( hbmk, <cText> ) -> NIL
    Texto de salida a stderr.
  • hbmk_OutStdRaw( hbmk, ... ) -> NIL
    Enviar texto a stdout sin ningún formato.
  • hbmk_OutErrRaw( hbmk, ... ) -> NIL
    Enviar texto a stderr sin ningún formato.
  • hbmk_Macro( hbmk, <cMacro> ) -> <cResult>
    Evaluate la expresión macro hbmk2.
  • hbmk_FNameEscape( hbmk, <cFileName> ) -> <cFileName>
    Escapa/encomilla el nombre de archivo para utilizarlo como parámetro de un comando externo
  • hbmk_PathSepToTarget( hbmk, <cFileName> ) -> <cFileName>
    Convierte el nombre del fichero al formato requerido por la plataforma/compilador C destino
  • hbmk_PathSepToForward( <cPath> ) -> <cPath>
    Convierte el nombre de archivo para que tenga barras invertidas como separadores de directorios.
  • hbmk_PathFromWorkdirToCWD( hbmk ) -> <cRelativePath>
    Devuelve la ruta relativa del valor de -workdir= desde el directorio de trabajo actual.
  • hbmk_FindInPath( <cFileName>, [<xPath>], [<aExtDef>] ) -> <cFNFound> | NIL
    Busca el archivo en <xPath> (se admite una matriz o una cadena delimitada con separadores de ruta) con una lista de extensiones alternativas <aExtDef> (por defecto ejecutables binarios). Devuelve un nombre de archivo si se encuentra, NIL si no.
  • hbmk_FNameDirExtSet( <cFileName>, [<cDirNew>], [<cExtNew>] ) -> <cFileName>
    Cambiar directorio y/o extensión en nombre de archivo.
  • hbmk_FuncNameEncode( <cFuncName> ) -> <cFuncNameEncoded>
    Codifica el nombre de la función de acuerdo a las reglas del compilador Harbour para formar los nombres de función HB_FUNC() en el código C.
  • hbmk_StrStripQuote( <cString> ) -> <cString>
    Remueve doble encomillado de una cadena.
  • hbmk_ArrayToList( <aList>, [<cSeparator>] ) -> <cList>
    Convertir array de cadenas a cadena. El separador por defecto es un espacio simple.

Variables de plugin:
(ítems de contexto 'hbmk', insensibles a mayúsculas/minúsculas, solo lectura salvo que se haya establecido lo contrario)

  • "apiver" versión API como un entero
  • "cSTATE" Esta
  • "params" arreglo de parámetros pasados a los plugins vía -pflag=/pi=, o a con una extensión registrada vía hbmk_Register_Input_File_Extension()
  • "vars" 'hash' de variables para uso del complemento. Modificable, local para cada complemento.
  • "cPLAT" valor -plat
  • "cCOMP" valor -comp
  • "nCOMPVer" ver envvar HB_COMPILER_VER
  • "cCPU" valor -cpu
  • "cBUILD" valor -build=
  • "cOUTPUTNAME" valor -o
  • "cTARGETNAME" ver macro ${hb_targetname}
  • "cTARGETTYPE" ver macro ${hb_targettype}
  • "lREBUILD" estado de opción -rebuild
  • "lCLEAN" estado de opción -clean
  • "lDEBUG" estado de opción -debug
  • "lMAP" estado de opción -map
  • "lSTRIP" estado de opción -strip
  • "lDONTEXEC" estado de opción -traceonly
  • "lIGNOREERROR" estado de opción -ignore
  • "lTRACE" estado de opción -trace
  • "lQUIET" estado de opción -q
  • "lINFO" estado de opción -info
  • "lBEEP" estado de opción -beep
  • "lRUN" estado de opción -run
  • "lINC" estado de opción -inc
  • "cCCPATH" ver envvar HB_CCPATH
  • "cCCPREFIX" ver envvar HB_CCPREFIX
  • "cCCSUFFIX" ver envvar HB_CCSUFFIX
  • "cCCEXT" ver envvar HB_CCEXT
  • "cWorkDir" valor -workdir=
  • "nExitCode" Código de salida actual

API de consola disponible en scripts Harbour:

  • hbshell_gtSelect( [<cGT>] ) -> NIL
    Intercambia GT. Por defecto [*]: 'gtwin'
  • hbshell_Clipper() -> NIL
    Habilita modo de compatibilidad Clipper (no-Unicode)
  • hbshell_include( <cHeader> ) -> <lSuccess>
    Cargar cabecera Harbour.
  • hbshell_uninclude( <cHeader> ) -> <lSuccess>
    Descargar cabecera Harbour.
  • hbshell_include_list() -> NIL
    Muestra lista de cabecera Harbour cargada.
  • hbshell_ext_load( <cPackageName> ) -> <lSuccess>
    Carga paquete. Similar a la directiva PP #request.
  • hbshell_ext_unload( <cPackageName> ) -> <lSuccess>
    Descargar paquete.
  • hbshell_ext_get_list() -> <aPackages>
    Lista de paquetes cargados
  • hbshell_DirBase() -> <cBaseDir>
    hb_DirBase() no mapeado al script.
  • hbshell_ProgName() -> <cPath>
    hb_ProgName() no mapeado al script.

Ejemplos para comenzar con hbmk2:

  • Para ejecutar la consola interactiva (indicador 'punto')
    $ hbmk2 .
  • Para ejecutar un script Harbour
    $ hbmk2 myscript.hb [<parameter[s]>]

Ejemplos para construir y ejecutar un binario portable Harbour (tambien llamado script Harbour precompilado):

  • A construir
    $ hbmk2 -gh myscript.hb
  • Para ejecutar el resultado de mas arriba
    $ hbmk2 myscript.hrb [<parameter[s]>]

Ejemplos para construir una aplicación Harbour

  • Para construir un solo .prg
    $ hbmk2 hello.prg
  • Para construir multiples fuentes .prg en una única aplicación en modo incremental
    $ hbmk2 mymain.prg myfuncs.prg -inc
  • para construir una aplicación usando un archivo de projecto
    $ hbmk2 myapp.hbp
  • Para construir una aplicación usando el modo incremental
    $ hbmk2 myapp.hbp -inc
  • Para construir una aplicación que utiliza un paquete de contribución o un complemento que se envia con un archivo .hbc
    $ hbmk2 myapp.prg hbct.hbc
  • Para construir una aplicación que utiliza una biblioteca pura
    $ hbmk2 myapp.prg -lmylib -L<path_to_mylib>
  • Para construir una aplicación que utiliza un recurso Windows
    $ hbmk2 mymain.prg myres.rc
  • Para construir una aplicación que enlaza con bibliotecas dinámicas Harbour
    $ hbmk2 -shared myapp.prg
  • Para construir una aplicación desde todas las fuentes .prg y .c ubicadas en el subdirectorio 'fuente'
    $ hbmk2 -omyapp src/*.prg src/*.c

Ejemplos para construir una librería estática Harbour

  • Para construir librería 'mylib' desde las fuentes
    $ hbmk2 -hblib mylibsrc.prg -omylib
  • Para construir librería 'mylib' desde las fuentes utilizando el modo incremental
    $ hbmk2 -hblib mylibsrc.prg -omylib -inc

Códigos de salida ("errorlevels"):

  • 0 sin error
  • 1 plataforma desconocida
  • 2 compilador desconocido
  • 3 detección de Harbour fallida
  • 5 no se pudo crear fragmento de código
  • 6 falló en compilación (Harbour, compilador C, compilador de Recursos)
  • 7 falló en ensamblado final (enlazador o administrador de bibliotecas)
  • 8 no soportado
  • 9 fallo al crear directorio de trabajo
  • 19 ayuda
  • 10 dependencia faltante o deshabilitada
  • 20 Inicialización de plugin
  • 30 anidamiento demasiado profundo
  • 50 detención solicitada
  • <otro> cuando la opción -run es utilizada, el código de salida será el retornado por el ejecutable destino

Notas:

  • <script> puede ser:
    <@script> o <script.hbm>: comandos de opciones de línea en el archivo
    <script.hbp>: comandos de opciones de línea en el archivo, también marca una nueva construcción destino si se especifica en la línea de comandos
    <script.hbc>: archivo de configuración del paquete

  • Un archivo fuente sin extensión cargará el archivo .hbp, si este .hbp existe en el directorio actual. De otra manera, se usará la extensión .prg.

  • Múltiples parámetros son aceptados -l, -L, -i y <script>.

  • las opciones regulares de compilador Harbour también son aceptadas.
    (Verlos con la opción -harbourhelp)

  • archivo de opciones hbmk.hbc en directorio de hbmk2 siempre es procesado si existe. En plataformas *nix este archivo es chequeado (en este orden) ~/.harbour, /etc/harbour, <base>/etc/harbour, <base>/etc antes de pasar a directorio de hbmk2.

  • hbmk.hbm hace script en el directorio actual siempre se procesa, si existe.

  • Se recomienda usar barras inclinadas en los valores de opciones de directorios, pero tambien se aceptan igualmente barras invertidas.

  • filtros para plataformas son aceptados en cada linea de archivo .hbc y con varias opciones.
    Formato de filtro: {[!][<plataforma>|<compilador>|<cpu>|<palabra-clave>]}. Filtros pueden ser combinados usando los operadores '&', '|' y agrupados en parénteses. Ej.: {win}, {gcc}, {linux|darwin}, {win&!pocc}, {(win|linux)&!watcom}, {unix&mt&gui}, -cflag={win}-DMYDEF, -stop{dos}, -stop{!allwin}

  • La mayoría de las líneas .hbc (libs=, hbcs=, prgflags=, cflags=, ldflags=, libpaths=, instfiles=, instpaths=, echo=) y sus parámetros de línea de comando correspondientes aceptarán variables macro. libpaths= tambien acepta %{hb_name} que se traduce al nombre del archivo .hbc buscado.

  • Tambien acepta Opciones de macros sustitución de comandos. Incluya comando dentro de ``, y, si el comando contiene espacios, también entre comillas dobles. F.e. "-cflag==`wx-config -cflags`", o ldflags={unix&gcc}"`wx-config --libs`".

  • Cuando se especifican múltiples opciones de tipo de construcción destino (-hblib, -hbdyn, etc.), solo se utilizará la primera, las demás serán ignoradas silenciosamente.

  • Bibliotecas y archivos objeto construidos con/para CA-Cl*pper no funcionaran con ninguna plataforma/compilador seleccionado.

  • Modos por defecto y soporte de características pueden variar por plataforma/compilador.

  • No se necesita GNU Make u otra utilidad 'make' específica de un compilador C y MSYS (en Windows) para ejecutar hbmk2.

  • . (punto) pasado como primer parámetro activará la consola interactiva Harbour.

  • el archivo .hb, .hrb o .dbf pasado como primer parámetro será ejecutado como un script Harbour. Si el nombre del archivo no contiene componentes de ruta, será buscado en el directorio de trabajo actual y en el PATH. Si no se especifica una extensión, se buscarán las extensiones .hb y .hrb en ese orden. Los archivos .dbf se abrirán automáticamente en modo compartido y el intérprete de comandos de Harbour será iniciado. Las extensiones no-estandar se autodetectarán para archivos de tipo fuente y scripts precompilados. Nota: para los scripts Harbour, la página de códigos (codepage) es establecida a UTF-8 por defecto. El archivo de cabecera principal 'hb.ch' es incluido (#include) automáticamente. El formato de fecha por defecto es el estandar ISO: yyyy-mm-dd. El GT por defecto es 'gtcgi', excepto que se detecten llamadas CUI de pantalla completa, en cuyo caso el GT 'gtwin' [*] se selecciona automáticamente (excepto para INIT PROCEDURESs).

  • Puede usar las teclas <Alt+V> en la consola interactiva Harbour para pegar texto del portapapeles.

  • Valores marcados con [*] pueden ser dependientes de la plataforma huésped o de la configuración. Esta ayuda ha sido generada en la plataforma huésped 'win' .

Valores suportados para <compiler> conforme a <platform> disponible:

  • linux gcc, clang, icc, watcom, sunpro, open64
  • darwin gcc, clang, icc
  • win mingw, msvc, clang, bcc, bcc64, watcom, icc, pocc, xcc, mingw64, msvc64, msvcia64, iccia64, pocc64
  • wce mingwarm, mingw, msvcarm, poccarm
  • os2 gcc, gccomf, watcom
  • dos djgpp, watcom
  • bsd gcc, clang, pcc
  • hpux gcc
  • beos gcc
  • qnx gcc
  • android gcc, gccarm
  • vxworks gcc, diab
  • symbian gcc
  • cygwin gcc
  • minix clang, gcc
  • aix gcc
  • sunos gcc, sunpro

Licencia:

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
their web site at http://www.gnu.org/).

License extensions:
- This source code must be kept and distributed as part
of the Harbour package and/or the placement of the tool sources
and files must reflect that it is part of Harbour Project.
- Copyright information must always be presented by
projects including this tool or help text.
- Modified versions of the tool must clearly state this
fact on the copyright screen.
- Source code modifications shall always be made available
along with binaries.
- Help text and documentation is licensed under
Creative Commons Attribution-ShareAlike 3.0:
http://creativecommons.org/licenses/by-sa/3.0/

Autor:

  • Viktor Szakats (vszakats.net/harbour)