Provided by:
dpkg-dev_1.15.8.4ubuntu3_all 
NOMBRE
dpkg-architecture - Configurar y determinar la arquitectura para la
construccin de paquetes
SINOPSIS
dpkg-architecture [opciones] [rdenes]
DESCRIPCIN
dpkg-architecture facilita determinar y configurar la arquitectura de
construccin y de la mquina anfitrin para la construccin de un paquete.
La arquitectura de construccin siempre se determina con una invocacin
externa a dpkg(1), y no se puede definir en la lnea de rdenes.
Puede definir la arquitectura del anfitrin introduciendo una o ambas
opciones -a y -t. El valor por omisin es una invocacin externa a
gcc(1), o la misma que la arquitectura de construccin en caso de no
disponer de CC o gcc. Es suficiente usar -a o -t, el valor del otro se
definir con un valor predefinido adecuado. De hecho, a veces es mejor
definir slo uno, ya que dpkg-architecture le avisar si su opcin no
encaja con la opcin predefinida.
RDENES
-l Muestra las variables de entorno, una por lnea, con el formato
VARIABLE=valor. Esta es la accin predefinida.
-edebian-architecture
Revisa si la arquitectura es la misma. Por omisin,
debian-architecture se compara con la arquitectura del sistema
Debian actual, el sistema anfitrin. Esta accin no expande los
comodines de arquitectura. La orden finaliza con un estado de
salida de cero si coinciden, y de 1 en caso contrario.
-icomodn-arquitectura
Revisa la identidad de la arquitectura expandiendo
comodin-arquitectura como un comodn de arquitectura, y
comparndola con la arquitectura del sistema Debian actual. La
orden finaliza con un estado de salida de cero si coincide, y de
1 en caso contrario.
-qnombre-variable
Muestra el valor de una nica variable.
-s Muestra una orden export. Se puede usar para definir las
variables de entorno mediante eval.
-u Muestra una orden similar a -s, pero para eliminar la definicin
(unset) de todas las variables.
-c orden
Ejecuta una orden en un entorno cuyas variables ya estn
definidas con un valor predefinido.
-L Muestra una lista de nombres de arquitectura vlidos.
--help Muestra el modo de uso y termina.
--version
Muestra la versin y termina.
OPCIONES
-adebian-architecture
Define la arquitectura de Debian.
-ttipo-sistema-gnu
Define el tipo de sistema GNU.
-f Los scripts respetan los valores de variables de entorno
preexistentes que tienen el mismo nombre que los valores
contenidos en el script (por ejemplo, usados por
dpkg-architecture), a menos que se use esta marca de forzado.
Permite al usuario sobreescribir un valor, an cuando la
invocacin a dpkg-architecture se encuentra en otro script (por
ejemplo, dpkg-buildpackage(1)).
TRMINOS
mquina de construccin
La mquina en la que se construye el paquete.
mquina anfitrin
La mquina para la cual se construye el paquete.
Arquitectura de Debian
La cadena de la arquitectura de Debian, que especifica el rbol
binario en el archivo FTP. Ejemplos: i386, sparc, hurd-i386.
comodn de arquitectura
Un comodn de arquitectura es una cadena especial de arquitectura
que encaja con cualquier arquitectura real del que es parte. La
forma habitual es <kernel>-<cpu>. Ejemplos: linux-any, any-i386,
hurd-any.
tipo de sistema GNU
Una cadena de definicin de arquitectura que consiste de dos partes
separadas por un guin: el procesador y el sistema. Ejemplos:
i386-linux-gnu, sparc-linux-gnu, i386-gnu, x86_64-netbsd.
VARIABLES
Las siguientes variables se definen mediante dpkg-architecture:
DEB_BUILD_ARCH
La arquitectura de Debian de la mquina de construccin.
DEB_BUILD_ARCH_OS
El nombre del sistema Debian de la mquina de construccin.
DEB_BUILD_ARCH_CPU
El nombre de Debian del procesador de la mquina de construccin.
DEB_BUILD_ARCH_BITS
El tamao del puntero de la mquina de construccin, en bits.
DEB_BUILD_ARCH_ENDIAN
El nivel de endianizacin de la mquina de construccin, little o big.
DEB_BUILD_GNU_CPU
La parte CPU de DEB_BUILD_GNU_TYPE.
DEB_BUILD_GNU_SYSTEM
La parte de System de DEB_BUILD_GNU_TYPE.
DEB_BUILD_GNU_TYPE
El tipo de sistema GNU de la mquina de construccin.
DEB_HOST_ARCH
La arquitectura de Debian de la mquina anfitrin.
DEB_HOST_ARCH_OS
El nombre de sistema Debian de la mquina anfitrin.
DEB_HOST_ARCH_CPU
El nombre del procesador Debian de la mquina anfitrin.
DEB_HOST_ARCH_BITS
El tamao del puntero de la mquina anfitrin, en bits.
DEB_HOST_ARCH_ENDIAN
El nivel de endianizacin de la mquina anfitrin, little o big.
DEB_HOST_GNU_CPU
La parte de CPU de DEB_HOST_GNU_TYPE.
DEB_HOST_GNU_SYSTEM
La parte de System de DEB_HOST_GNU_TYPE.
DEB_HOST_GNU_TYPE
El tipo de sistema GNU de la mquina anfitrin.
DEBIAN/RULES
Las variables de entorno definidas por dpkg-architecture se introducen
a debian/rules como variables de make (consulte la documentacin de
make). Por otra parte, no debera depender de ellos, ya que esto rompe
la invocacin manual del script. En lugar de ello, se deberan iniciar
mediante dpkg-architecture con la opcin -q. Aqu hay algunos ejemplos,
que muestran tambin como mejorar la compatibilidad de su paquete con la
construccin para varias arquitecturas.
En lugar de:
ARCH=`dpkg --print-architecture`
configure $(ARCH)-linux
use lo siguiente:
DEB_BUILD_GNU_TYPE := $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
DEB_HOST_GNU_TYPE := $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
configure --build=$(DEB_BUILD_GNU_TYPE) --host=$(DEB_HOST_GNU_TYPE)
En lugar de:
ARCH=`dpkg --print-architecture`
ifeq ($(ARCH),alpha)
...
endif
use:
DEB_HOST_ARCH := $(shell dpkg-architecture -qDEB_HOST_ARCH)
ifeq ($(DEB_HOST_ARCH),alpha)
...
endif
o si slo precisa revisar el tipo de sistema o CPU, use las variables
DEB_HOST_ARCH_OS o DEB_HOST_ARCH_CPU.
En general, invocar dpkg en el fichero de reglas (rules) para obtener
la informacin de arquitectura est obsoleto (a menos que desee ofrecer
compatibilidad con versiones anteriores, vase a continuacin). La opcin
--print-architecture es particularmente inestable, ya que existen
arquitecturas de Debian que no encajan con el nombre de un procesador.
COMPATIBILIDAD CON VERSIONES ANTERIORES
Las variables DEB_*_ARCH_BITS y DEB_*_ARCH_ENDIAN se introdujeron a
partir de la versin 1.15.4 de dpkg-dev. Su uso en debian/rules requiere
una dependencia de construccin sobre dpkg-dev (>= 1.15.4).
Las variables DEB_HOST_ARCH_CPU y DEB_HOST_ARCH_OS se introdujeron a
partir de la versin 1.13.2 de dpkg-dev. Antes, los ficheros
debian/rules solan revisar aquellos valores de DEB_HOST_GNU_CPU o
DEB_HOST_GNU_TYPE susceptibles de haber cambiado.
Se deberan actualizar aquellas partes de los ficheros debian/rules que
revisan las variables que deciden el modo o el objetivo a compilar.
Puede usar el siguiente cdigo si desea permitir la compatibilidad con
versiones anteriores de dpkg-dev:
DEB_HOST_ARCH_CPU := $(shell dpkg-architecture -qDEB_HOST_ARCH_CPU 2>/dev/null)
DEB_HOST_ARCH_OS := $(shell dpkg-architecture -qDEB_HOST_ARCH_OS 2>/dev/null)
# Take account of old dpkg-architecture output.
ifeq ($(DEB_HOST_ARCH_CPU),)
DEB_HOST_ARCH_CPU := $(shell dpkg-architecture -qDEB_HOST_GNU_CPU)
ifeq ($(DEB_HOST_ARCH_CPU),x86_64)
DEB_HOST_ARCH_CPU := amd64
endif
endif
ifeq ($(DEB_HOST_ARCH_OS),)
DEB_HOST_ARCH_OS := $(subst -gnu,,$(shell dpkg-architecture -qDEB_HOST_GNU_SYSTEM))
ifeq ($(DEB_HOST_ARCH_OS),gnu)
DEB_HOST_ARCH_OS := hurd
endif
endif
Y de forma parecida con DEB_BUILD_ARCH_CPU y DEB_BUILD_ARCH_OS.
Si desea la compatibilidad con versiones de dpkg-dev que no incluan
dpkg-architecture, puede usar lo siguiente:
DEB_BUILD_ARCH := $(shell dpkg --print-architecture)
DEB_BUILD_GNU_CPU := $(patsubst hurd-%,%,$(DEB_BUILD_ARCH))
ifeq ($(filter-out hurd-%,$(DEB_BUILD_ARCH)),)
DEB_BUILD_GNU_SYSTEM := gnu
else
DEB_BUILD_GNU_SYSTEM := linux-gnu
endif
DEB_BUILD_GNU_TYPE=$(DEB_BUILD_GNU_CPU)-$(DEB_BUILD_GNU_SYSTEM)
DEB_HOST_ARCH := $(DEB_BUILD_ARCH)
DEB_HOST_GNU_CPU := $(DEB_BUILD_GNU_CPU)
DEB_HOST_GNU_SYSTEM := $(DEB_BUILD_GNU_SYSTEM)
DEB_HOST_GNU_TYPE := $(DEB_BUILD_GNU_TYPE)
Inserte un subconjunto de estas lneas al inicio del fichero
debian/rules; estos valores predefinidos se sobreescribirn en caso de
usar dpkg-architecture.
No necesita el conjunto completo. Seleccione un conjunto consistente
que contenga los valores que usa en el fichero de reglas. Por ejemplo,
si slo necesita la arquitectura Debian del sistema de destino, tiene
suficiente con DEB_HOST_ARCH=`dpkg --print-architecture (de hecho, esta
es la arquitectura de Debian de la mquina de construccin, pero recuerde
que slo intentamos crear la compatibilidad con versiones anteriores que
tienen una compilacin nativa).
Las opciones -e y -i aparecieron en recientes versiones de
dpkg-architecture (a partir de la versin 1.13.13 de dpkg).
EJEMPLOS
dpkg-buildpackage acepta la opcin -a y la introduce a
dpkg-architecture. Otros ejemplos:
CC=i386-gnu-gcc dpkg-architecture -c debian/rules build
eval `dpkg-architecture -u`
Revisa si una arquitectura equivale a la arquitectura actual o dada:
dpkg-architecture -elinux-alpha
dpkg-architecture -amips -elinux-mips
Revisa si la arquitectura actual o introducida con -a es de un sistema
Linux:
dpkg-architecture -ilinux-any
dpkg-architecture -ai386 -ilinux-any
FICHEROS
Todos los ficheros deben estar presentes para que dpkg-architecture
funcione. Puede sobreescribir la ubicacin en tiempo de ejecucin
mediante la variable de entorno DPKG_DATADIR.
/usr/share/dpkg/cputable
Tabla de nombres de CPU conocidos y su correlacin con su nombre
GNU.
/usr/share/dpkg/ostable
Tabla de sistemas operativos conocidos y su correlacin con su
nombre GNU.
/usr/share/dpkg/triplettable
Correlacin entre tuples de 3 de la arquitectura de Debian, y los
nombres de arquitectura de Debian.
VASE TAMBIN
dpkg-buildpackage(1), dpkg-cross(1).
AUTOR
dpkg-architecture y su pgina de manual fueron escritos originalmente
por Marcus Brinkmann <brinkmd@debian.org>.
TRADUCTOR
Rudy Godoy <rudy@kernel-panik.org>, Rubn Porras <nahoo@inicia.es>,
Bruno Barrera C. <bruno.barrera@igloo.cl>, Carlos Izquierdo
<gheesh@ertis.net>, Esteban Manchado y NOK. Debian L10n Spanish
<debian-l10n-spanish@lists.debian.org>.
Revisiones por Santiago Vila <sanvila@unex.es>, Javier
Fernndez-Sanguino, Rubn Porras, Luis Uribe y Omar Campagne.