.\" -*- coding: UTF-8 -*- .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH MAKE 1 "26 May 2023" GNU "Órdenes de usuario" .SH NOMBRE make \- GNU Make utility to maintain groups of programs .SH SINOPSIS \fBmake\fP [\fIOPTION\fP]... [\fITARGET\fP]... .SH DESCRIPCIÓN .LP El propósito de la utilidad \fImake\fP es determinar automáticamente qué partes de un programa grande necesitan ser recompiladas, y ejecutar las órdenes pertinentes para recompilarlas. Este manual describe la implementación de \fImake\fP del proyecto GNU, que ha sido escrita por Richard Stallman y Roland McGrath. Nuestros ejemplos muestran programas en C, que es lo más común, pero se puede emplear \fImake\fP con cualquier lenguaje de programación cuyo compilador pueda ejecutarse con una orden del shell. De hecho, \fImake\fP no está limitado a compilar programas. Se puede usar para describir cualquier tarea donde algunos ficheros deban ser actualizados automáticamente a partir de otros en cualquier momento en que éstos cambien. .LP Para prepararnos a utilizar \fBmake\fP, debemos escribir antes un fichero llamado el \fImakefile\fP que describe las relaciones entre los ficheros de nuestro programa, y las órdenes necesarias para actualizar cada fichero. En un programa, normalmente el fichero ejecutable se actualiza a partir de los ficheros o módulos objeto, los cuales a su vez se construyen mediante la compilación de los ficheros con el código fuente. .LP Una vez que exista un \fImakefile\fP apropiado, cada vez que cambiemos algún fichero fuente, esta simple orden: .sp 1 .RS \fBmake\fP .RE .sp 1 es suficiente para que se realicen todas las recompilaciones necesarias. El programa \fImake\fP emplea los datos del \fImakefile\fP (y otros internos) y los tiempos de última modificación de los ficheros para decidir cuáles de ellos necesitan ser actualizados. Para cada uno de esos ficheros, ejecuta las órdenes indicadas en el makefile. .LP \fBmake\fP executes commands in the \fImakefile\fP to update one or more \fItargets\fP, where \fItarget\fP is typically a program. If no \fB\-f\fP option is present, \fBmake\fP will look for the makefiles \fIGNUmakefile\fP, \fImakefile\fP, and \fIMakefile\fP, in that order. .LP Normally you should call your makefile either \fImakefile\fP or \fIMakefile\fP. (We recommend \fIMakefile\fP because it appears prominently near the beginning of a directory listing, right near other important files such as \fIREADME\fP.) The first name checked, \fIGNUmakefile\fP, is not recommended for most makefiles. You should use this name if you have a makefile that is specific to GNU Make, and will not be understood by other versions of \fBmake\fP. If \fImakefile\fP is '\-', the standard input is read. .LP \fBmake\fP actualiza un objetivo si éste depende de ficheros de prerrequisito (o dependencias) que hayan sido modificados desde la última modificación del objetivo, o si éste no existe. .SH OPCIONES .sp 1 .TP 0.5i \fB\-b\fP, \fB\-m\fP Estas opciones no hacen nada, y solo se reconocen por compatibilidad con otras versiones de \fBmake\fP. .TP 0.5i \fB\-B\fP, \fB\-\-always\-make\fP Ejecuta incondicionalmente todos los objetivos. .TP 0.5i \fB\-C\fP \fIdir\fP, \fB\-\-directory\fP=\fIdir\fP Cambia el directorio de trabajo a \fIdir\fP antes de leer los \fImakefiles\fP o hacer otra cosa. Si se especifican varias opciones \fB\-C\fP, cada una se interpreta en relación a la anterior: \fB\-C \fP/ \fB\-C \fPetc es equivalente a \fB\-C \fP/etc. Esto se usa típicamente en llamadas recursivas a \fBmake\fP. .TP 0.5i \fB\-d\fP Muestra información de depuración además del procesamiento normal. Esta información dice qué ficheros están siendo considerados para ser rehechos, qué tiempos de ficheros están siendo comparados y con qué resultados, qué ficheros necesitan realmente ser rehechos, qué reglas implícitas están siendo tenidas en cuenta y cuáles se están aplicando: o sea, todo lo interesante sobre cómo \fBmake\fP decide las cosas que tiene que hacer. .TP 0.5i \fB\-\-debug\fP\fI[=FLAGS]\fP Print debugging information in addition to normal processing. If the \fIFLAGS\fP are omitted, then the behavior is the same as if \fB\-d\fP was specified. \fIFLAGS\fP may be any or all of the following names, comma\- or space\-separated. Only the first character is significant: the rest may be omitted: \fIall\fP for all debugging output (same as using \fB\-d\fP), \fIbasic\fP for basic debugging, \fIverbose\fP for more verbose basic debugging, \fIimplicit\fP for showing implicit rule search operations, \fIjobs\fP for details on invocation of commands, \fImakefile\fP for debugging while remaking makefiles, \fIprint\fP shows all recipes that are run even if they are silent, and \fIwhy\fP shows the reason \fBmake\fP decided to rebuild each target. Use \fInone\fP to disable all previous debugging flags. .TP 0.5i \fB\-e\fP, \fB\-\-environment\-overrides\fP Da a las variables que vienen del entorno precedencia a las que vienen de los \fImakefiles\fP. .TP 0.5i \fB\-E\fP \fIcadena\fP, \fB\-\-eval\fP \fIcadena\fP Interpret \fIstring\fP using the \fBeval\fP function, before parsing any makefiles. .TP 0.5i \fB\-f\fP \fIfichero\fP, \fB\-\-file\fP=\fIfichero\fP, \fB\-\-makefile\fP=\fIFICHERO\fP Emplea \fIfichero\fP como un \fImakefile\fP. .TP 0.5i \fB\-i\fP, \fB\-\-ignore\-errors\fP No tiene en cuenta ningún error en las órdenes ejecutadas para reconstruir ficheros. .TP 0.5i \fB\-I\fP \fIdir\fP, \fB\-\-include\-dir\fP=\fIdir\fP Especifica un directorio \fIdir\fP en donde buscar \fImakefiles\fP incluidos. Si se usan varias opciones \fB\-I\fP para especificar varios directorios, éstos se buscan en el orden dado. De forma distinta a como se deben dar los argumentos de otras opciones de \fBmake\fP, los directorios dados en las opciones \fB\-I\fP pueden ir inmediatamente tras la I: o sea, se permite tanto \fB\-I\fP\fIdir\fP como \fB\-I \fP\fIdir\fP. Esta sintaxis se permite por compatibilidad con la misma opción \fB\-I\fP del preprocesador de C. .TP 0.5i \fB\-j\fP [\fItrabajos\fP], \fB\-\-jobs\fP[=\fItrabajos\fP] Especifica el número de \fItrabajos\fP (órdenes) que se deban ejecutar simultáneamente. Si hay más de una opción \fB\-j\fP, solo la última vale. Si se da la opción \fB\-j\fP sin ningún argumento, \fBmake\fP no pondrá límites al número de trabajos que puedan ejecutarse simultáneamente. .TP 0.5i \fB\-\-jobserver\-style=\fP\fIestilo\fP] The style of jobserver to use. The \fIstyle\fP may be one of \fBfifo\fP, \fBpipe\fP, or \fBsem\fP (Windows only). .TP 0.5i \fB\-k\fP, \fB\-\-keep\-going\fP Continúa tanto como sea posible tras un error. Mientras que el objetivo que ha fallado, y los que dependen de él, no pueden ser reconstruidos, las otras dependencias de estos objetivos sí que pueden procesarse, así que con esta opción se procesan. .TP 0.5i \fB\-l\fP [\fIcarga\fP], \fB\-\-load\-average\fP[=\fIcarga\fP] Dice que no deberá empezarse ningún nuevo trabajo (mandato) si hay otros trabajos en ejecución y la carga media es como poco \fIcarga\fP (un número real, en coma flotante). Sin el argumento, anula un límite anterior de carga, si lo hubiera. .TP 0.5i \fB\-L\fP, \fB\-\-check\-symlink\-times\fP Emplea el tiempo de la última modificación entre los enlaces simbólicos y el objetivo. .TP 0.5i \fB\-n\fP, \fB\-\-just\-print\fP, \fB\-\-dry\-run\fP, \fB\-\-recon\fP Muestra las órdenes que se ejecutarían, pero no se ejecutan salvo en alguna circunstancia concreta. .TP 0.5i \fB\-o\fP \fIfichero\fP, \fB\-\-old\-file\fP=\fIfichero\fP, \fB\-\-assume\-old\fP=\fIfichero\fP No reconstruye el \fIfichero\fP especificado, incluso siendo más antiguo que sus dependencias, y tampoco reconstruye nada que dependa de cambios en \fIfichero\fP. Esencialmente el fichero se trata como muy viejo, y sus reglas no son tenidas en cuenta. .TP 0.5i \fB\-O\fP[\fItipo\fP], \fB\-\-output\-sync\fP[=\fItipo\fP] When running multiple jobs in parallel with \fB\-j\fP, ensure the output of each job is collected together rather than interspersed with output from other jobs. If \fItype\fP is not specified or is \fBtarget\fP the output from the entire recipe for each target is grouped together. If \fItype\fP is \fBline\fP the output from each command line within a recipe is grouped together. If \fItype\fP is \fBrecurse\fP output from an entire recursive make is grouped together. If \fItype\fP is \fBnone\fP output synchronization is disabled. .TP 0.5i \fB\-p\fP, \fB\-\-print\-data\-base\fP Muestra la base de datos (reglas y valores de variables) que resultan de leer los \fImakefiles\fP; luego todo se procesa de la forma usual o de la que se haya especificado. También se muestra la información de versión dada por la opción \fB\-v\fP (vea más abajo). Para ver la base de datos sin hacer ninguna otra cosa, dé la orden \fImake \-p \-f/dev/null\fP. .TP 0.5i \fB\-q\fP, \fB\-\-question\fP \*(lqModo de interrogación (Query)\*(rq. No ejecuta ninguna orden ni muestra nada; solo devuelve un status de salida cero si los objetivos especificados ya están actualizados, o no cero si no lo están. .TP 0.5i \fB\-r\fP, \fB\-\-no\-builtin\-rules\fP Elimina el empleo de las reglas implícitas incorporadas. También borra la lista predeterminada de sufijos para las reglas de sufijo. .TP 0.5i \fB\-R\fP, \fB\-\-no\-builtin\-variables\fP No define ninguna variable interna. .TP 0.5i \fB\-s\fP, \fB\-\-silent\fP, \fB\-\-quiet\fP Modo de operación silencioso; no muestra las órdenes que se están ejecutando. .TP 0.5i \fB\-\-no\-silent\fP Cancela el efectvo de la opción \fB\-s\fP. .TP 0.5i \fB\-S\fP, \fB\-\-no\-keep\-going\fP, \fB\-\-stop\fP Cancela el efecto de la opción \fB\-k\fP. .TP 0.5i \fB\-t\fP, \fB\-\-touch\fP Toca los ficheros (los marca como actualizados sin cambiarlos realmente) en vez de ejecutar las órdenes pertientes. Esto se emplea para pretender que las órdenes han sido ejecutadas, con el fin de engañar a futuras ejecuciones de \fBmake\fP. .TP 0.5i \fB\-\-trace\fP Information about the disposition of each target is printed (why the target is being rebuilt and what commands are run to rebuild it). .TP 0.5i \fB\-v\fP, \fB\-\-version\fP Print the version of the \fBmake\fP program plus a copyright, a list of authors and a notice that there is no warranty. .TP 0.5i \fB\-w\fP, \fB\-\-print\-directory\fP Muestra un mensaje conteniendo el directorio de trabajo antes y después de otro procesamiento. Esto puede ser útil para seguir la pista a errores que vienen de anidamientos complicados de órdenes \fBmake\fP recursivas. .TP 0.5i \fB\-\-no\-print\-directory\fP Desactiva \fB\-w\fP aunque haya sido indicada expresamente. .TP 0.5i \fB\-\-shuffle\fP\fI[=MODO]\fP Enable shuffling of goal and prerequisite ordering. \fIMODE\fP is one of \fInone\fP to disable shuffle mode, \fIrandom\fP to shuffle prerequisites in random order, \fIreverse\fP to consider prerequisites in reverse order, or an integer \fI\fP which enables \fIrandom\fP mode with a specific \fIseed\fP value. If \fIMODE\fP is omitted the default is \fIrandom\fP. .TP 0.5i \fB\-W\fP \fIfichero\fP, \fB\-\-what\-if\fP=\fIfichero\fP, \fB\-\-new\-file\fP=\fIfichero\fP, \fB\-\-assume\-new\fP=\fIfichero\fP Pretende que el objetivo \fIfichero\fP acaba de ser modificado. Cuando se emplea con la opción \fB\-n\fP, esto nos enseña lo que pasaría si fuéramos a modificar ese fichero. Sin \fB\-n\fP, es casi lo mismo que ejecutar la orden \fItouch\fP en el fichero dado antes de dar la orden \fBmake\fP, salvo en que el tiempo de modificación se cambia solamente en la imaginación de \fBmake\fP. .TP 0.5i \fB\-\-warn\-undefined\-variables\fP Avisa en caso de referenciar alguna variable sin definir. .SH "ESTADO DE SALIDA" GNU Make exits with a status of zero if all makefiles were successfully parsed and no targets that were built failed. A status of one will be returned if the \fB\-q\fP flag was used and \fBmake\fP determines that a target needs to be rebuilt. A status of two will be returned if any errors were encountered. .SH "VÉASE TAMBIÉN" La documentación completa de \fBmake\fP se mantiene como manual Texinfo. Si los programas \fBinfo\fP y \fBmake\fP están adecuadamente instalados en su sistema, la orden .IP \fBinfo make\fP .PP debería acceder al manual completo. .SH ERRORES Consulte el capítulo \*(lqProblems and Bugs\*(rq en \fIThe GNU Make Manual\fP. .SH AUTOR Dennis Morse, de la Stanford University, escribió originalmente esta página del Manual. Mike Frysinger y Roland McGrath trabajaron posteriormente en ella.Actualmente la mantiene Paul Smith. .SH COPYRIGHT Copyright \(co 1992\-1993, 1996\-2023 Free Software Foundation, Inc. This file is part of \fIGNU Make\fP. .LP GNU Make 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 3 of the License, or (at your option) any later version. .LP GNU Make 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. .LP You should have received a copy of the GNU General Public License along with this program. If not, see \fIhttps://www.gnu.org/licenses/\fP. .PP .SH TRADUCCIÓN La traducción al español de esta página del manual fue creada por Gerardo Aburruzaga García y Marcos Fouces . .PP Esta traducción es documentación libre; lea la .UR https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3 .UE o posterior con respecto a las condiciones de copyright. No existe NINGUNA RESPONSABILIDAD. .PP Si encuentra algún error en la traducción de esta página del manual, envíe un correo electrónico a .MT debian-l10n-spanish@lists.debian.org .ME .