summaryrefslogtreecommitdiffstats
path: root/man/pt/dpkg-architecture.pod
blob: 90977a61984ba3e6f91590b4bfaf664e46a36b16 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
        *****************************************************
        *           GENERATED FILE, DO NOT EDIT             *
        * THIS IS NO SOURCE FILE, BUT RESULT OF COMPILATION *
        *****************************************************

This file was generated by po4a(7). Do not store it (in VCS, for example),
but store the PO file used as source file by po4a-translate.

In fact, consider this as a binary, and the PO file as a regular .c file:
If the PO get lost, keeping this translation up-to-date will be harder.

=encoding UTF-8

=head1 NOME

dpkg-architecture - define e determina a arquitectura para compilação de
pacotes

=head1 SINOPSE

B<dpkg-architecture> [I<option>...] [I<command>]

=head1 DESCRIÇÃO

B<dpkg-architecture> disponibiliza uma habilidade para determinar e definir
a arquitectura de compilação e da máquina para compilação de pacotes.

A arquitectura de compilação é sempre determinada seja ou pela variável
B<DEB_BUILD_ARCH> se definida (e se B<--force> não for especificada) ou por
uma chamada externa ao B<dpkg>(1), e não pode ser definida na linha de
comandos.

Você pode especificar a arquitectura da máquina ao fornecer uma ou ambas as
opções B<--host-arch> e B<--host-type>, caso contrário é usada a variável
B<DEB_HOST_ARCH> se definida (e não sendo especificado B<--force>). A
predefinição é determinada por uma chamada externa ao B<gcc>(1), ou o mesmo
como a arquitectura de compilação se B<CC> ou gcc estiverem ambos não
disponíveis. Um de B<--host-arch> e B<--host-type> é suficiente, o valor do
outro será definido para uma predefinição utilizável. De facto, é muitas
vezes melhor apenas especificar um, porque B<dpkg-architecture> vai avisa-lo
se a sua escolha não corresponder ao predefinido.

=head1 COMANDOS

=over 

=item B<-l>, B<--list>

Escreve as variáveis de ambiente, uma em cada linha, no formato
I<VARIÁVEL=valor>. Esta é a acção predefinida.

=item B<-e>, B<--equal> I<architecture>

Verifica a igualdade da arquitectura (desde dpkg 1.13.13). Compara a actual
ou a arquitectura de maquina Debian especificada com I<architecture>, para
verificar se são iguais. Esta acção não irá expandir as wildcards de
arquitectura. O comando termina com um estado de saída 0 de corresponderem,
1 se não corresponderem.

=item B<-i>, B<--is> I<architecture-wildcard>

Verifica a identidade da arquitectura (desde dpkg 1.13.13). Compara a actual
ou a arquitectura de máquina Debian especificada com
I<architecture-wildcard> após a ter expandido como uma wildcard de
arquitectura, para verificar se correspondem. O comando termina com estado
de saída 0 se corresponderem, 1 se não corresponderem.

=item B<-q>, B<--query> I<variable-name>

Escreve o valor de uma variável única.

=item B<-s>, B<--print-set>

Escreve um comando de exportação. Isto pode ser usado para definir as
variáveis de ambiente usando a shell POSIX ou make B<eval>, dependendo do
formato dos resultados.

=item B<-u>, B<--print-unset>

Escreve um comando semelhante ao B<--print-set> mas para limpar o valor de
todas as variáveis.

=item B<-c>, B<--command> I<command-string>

Executa uma I<command-string> num ambiente que tem todas as variáveis
definidas para o determinado valor.

=item B<-L>, B<--list-known>

Escreve uma lista de nomes de arquitecturas válidos. Possivelmente
restringidos por uma ou mais das opções de correspondência
B<--match-wildcard>, B<--match-bits> ou B<--match-endian> (desde dpkg
1.17.14).

=item B<-?>, B<--help>

Mostra a mensagem de utilização e termina.

=item B<--version>

Mostra a versão e termina.

=back

=head1 OPÇÕES

=over 

=item B<-a>, B<--host-arch> I<architecture>

Define a arquitectura da máquina Debian

=item B<-t>, B<--host-type> I<gnu-system-type>

Define o tipo de sistema GNU da máquina.

=item B<-A>, B<--target-arch> I<architecture>

Define a arquitectura Debian de destino (desde dpkg 1.17.14).

=item B<-T>, B<--target-type> I<gnu-system-type>

Define o tipo de sistema GNU do destino (desde dpkg 1.17.14).

=item B<-W>, B<--match-wildcard> I<architecture-wildcard>

Restringe as arquitectura listadas por B<--list-known> a aquelas que
correspondem à wildcard de arquitectura especificada (desde dpkg 1.17.14).

=item B<-B>, B<--match-bits> I<architecture-bits>

Restringe as arquitectura listadas por B<--list-known> a aquelas com os bits
de CPU especificados (desde dpkg 1.17.14). Seja B<32> ou B<64>.

=item B<-E>, B<--match-endian> I<architecture-endianness>

Restringe as arquitectura listadas por B<--list-known> a aquelas com a
categoria endian especificada (desde dpkg 1.17.14). Seja B<little> ou
B<big>.

=item B<--print-format> I<format>

Define o formato de resultados para B<--print-set> e B<--print-unset> (desde
dpkg 1.20.6), para ou B<shell> (predefinição) ou B<make>.

=item B<-f>, B<--force>

Os valores definidos pelas variáveis de ambiente existentes com os mesmos
nomes usados como usados pelos scripts são respeitados (isto é, usados por
B<dpkg-architecture>), excepto se esta bandeira de forçar estiver
presente. Isto permite ao utilizador sobrepor um valor mesmo quando a
chamada a B<dpkg-architecture> está enterrada em algum outro script (por
exemplo B<dpkg-buildpackage>(1)).

=back

=head1 TERMOS

=over 

=item máquina de compilação

A máquina onde o pacote é compilado.

=item máquina anfitriã

A máquina para onde o pacote é compilado.

=item máquina destino (alvo)

A maquina para a qual o compilador foi construído. Isto é apenas necessário
quando se compila -ferramenta-corrente-cruzada, uma que será compilada sobre
a na arquitectura de compilação, para ser corrida na arquitectura anfitriã,
e para compilar código para a arquitectura alvo.

=item Arquitectura Debian

A string de arquitectura Debian, a qual especifica a árvore binária no
arquivo FTP. Exemplos: i386, sparc, hurd-i386.

=item Tuple de arquitectura Debian

Um tuple de arquitectura Debian é a arquitectura totalmente qualificada com
todos os seus componentes soletrados. Isto difere das arquitecturas Debian
em que pelo menos o componente I<cpu> não trás embutido o I<abi>. O tuple
actual tem o formato I<abi>-I<libc>-I<os>-I<cpu>. Exemplos:
base-gnu-linux-amd64, eabihf-musl-linux-arm.

=item Wildcard de arquitectura Debian

Um wildcard de arquitectura Debian é uma string especial de arquitectura que
irá corresponder a qualquer arquitectura real que faça parte dela. O formato
geral é um tuple de arquitectura Debian com quatro ou menos elementos, e com
pelo menos um deles a ser B<any>. Elementos em falta no tuple são prefixados
implicitamente como B<any>, e assim os seguintes pares são equivalentes:

=over 

=item B<any>-B<any>-B<any>-B<any> = B<any>

=item B<any>-B<any>-I<os>-B<any> = I<os>-B<any>

=item B<any>-I<libc>-B<any>-B<any> = I<libc>-B<any>-B<any>

=back

Exemplos: linux-any, any-i386, hurd-any, eabi-any-any-arm, musl-any-any.

=item Tipo de sistema GNU

Uma string de especificação de arquitectura consiste de duas partes
separadas por um hífen: cpu e sistema. Exemplos: i586-linux-gnu,
sparc-linux-gnu, i686-gnu, x86_64-netbsd.

=item multiarch triplet

O tipo de sistema GNU clarificado, usado para caminhos do sistema de
ficheiros. Este triplet não altera mesmo quando a linha base ISA entra em
colisão, para que os caminhos resultantes fiquem estáveis com o tempo. A
única diferença actual com o tipo de sistema GNU é que a parte de CPU para
os sistemas baseados em i386 é sempre i386. Exemplos:  i386-linux-gnu,
x86_64-linux-gnu.  Exemplos de caminhos: /lib/powerpc64le-linux-gnu/,
/usr/lib/i386-kfreebsd-gnu/.

=back

=head1 VARIÁVEIS

As seguintes variáveis são lidas a partir do ambiente (a menos que
B<--force> seja especificado) e definidas por B<dpkg-architecture> (veja a
secção B<TERMS> para uma descrição do esquema de nomeação):

=over 

=item B<DEB_BUILD_ARCH>

A arquitectura Debian da máquina de compilação.

=item B<DEB_BUILD_ARCH_ABI>

O nome ABI Debian da máquina de compilação (desde dpkg 1.18.11).

=item B<DEB_BUILD_ARCH_LIBC>

O nome libc Debian da máquina de compilação (desde dpkg 1.18.11).

=item B<DEB_BUILD_ARCH_OS>

O nome de sistema Debian da máquina de compilação (desde dpkg 1.13.2).

=item B<DEB_BUILD_ARCH_CPU>

O nome de CPU de Debian da máquina de compilação (desde dpkg 1.13.2).

=item B<DEB_BUILD_ARCH_BITS>

O tamanho do ponteiro da máquina de compilação (em bits, desde dpkg 1.15.4).

=item B<DEB_BUILD_ARCH_ENDIAN>

A classe endian da máquina de compilação (ittle / big; desde dpkg 1.15.4).

=item B<DEB_BUILD_GNU_CPU>

A parte CPU GNU de B<DEB_BUILD_GNU_TYPE>.

=item B<DEB_BUILD_GNU_SYSTEM>

A parte de system GNU de B<DEB_BUILD_GNU_TYPE>.

=item B<DEB_BUILD_GNU_TYPE>

O tipo de sistema GNU da máquina de compilação.

=item B<DEB_BUILD_MULTIARCH>

O tipo de sistema GNU clarificado da máquina de compilação, usado para
caminhos do sistema de ficheiros (desde dpkg 1.16.0).

=item B<DEB_HOST_ARCH>

A arquitectura Debian da máquina anfitriã.

=item B<DEB_HOST_ARCH_ABI>

O nome ABI Debian da máquina anfitriã (desde dpkg 1.18.11).

=item B<DEB_HOST_ARCH_LIBC>

O nome libc Debian da máquina anfitriã (desde dpkg 1.18.11).

=item B<DEB_HOST_ARCH_OS>

O nome de sistema Debian da máquina anfitriã (desde dpkg 1.13.2).

=item B<DEB_HOST_ARCH_CPU>

O nome de CPU de Debian da máquina anfitriã (desde dpkg 1.13.2).

=item B<DEB_HOST_ARCH_BITS>

O tamanho do ponteiro da máquina anfitriã (em bits, desde dpkg 1.15.4).

=item B<DEB_HOST_ARCH_ENDIAN>

A classe endian da máquina anfitriã (ittle / big; desde dpkg 1.15.4).

=item B<DEB_HOST_GNU_CPU>

A parte CPU GNU de B<DEB_HOST_GNU_TYPE>.

=item B<DEB_HOST_GNU_SYSTEM>

A parte de system GNU de B<DEB_HOST_GNU_TYPE>.

=item B<DEB_HOST_GNU_TYPE>

O tipo de sistema GNU da máquina anfitriã.

=item B<DEB_HOST_MULTIARCH>

O tipo de sistema GNU clarificado da máquina anfitriã, usado para caminhos
do sistema de ficheiros (desde dpkg 1.16.0).

=item B<DEB_TARGET_ARCH>

A arquitectura Debian da máquina de destino (desde dpkg 1.17.14).

=item B<DEB_TARGET_ARCH_ABI>

O nome ABI Debian da máquina alvo (desde dpkg 1.18.11).

=item B<DEB_TARGET_ARCH_LIBC>

O nome libc Debian da máquina alvo (desde dpkg 1.18.11).

=item B<DEB_TARGET_ARCH_OS>

O nome de sistema Debian da máquina de destino (desde dpkg 1.17.14).

=item B<DEB_TARGET_ARCH_CPU>

O nome de CPU de Debian da máquina de destino (desde dpkg 1.17.14).

=item B<DEB_TARGET_ARCH_BITS>

O tamanho do ponteiro da máquina de destino (em bits, desde dpkg 1.17.14).

=item B<DEB_TARGET_ARCH_ENDIAN>

A classe endian da máquina de destino (ittle / big; desde dpkg 1.17.14).

=item B<DEB_TARGET_GNU_CPU>

A parte CPU GNU de B<DEB_TARGET_GNU_TYPE> (desde dpkg 1.17.14).

=item B<DEB_TARGET_GNU_SYSTEM>

A parte de system GNU de B<DEB_TARGET_GNU_TYPE> (desde dpkg 1.17.14).

=item B<DEB_TARGET_GNU_TYPE>

O tipo de sistema GNU da máquina de destino (desde dpkg 1.17.14).

=item B<DEB_TARGET_MULTIARCH>

O tipo de sistema GNU clarificado da máquina de destino, usado para caminhos
do sistema de ficheiros (desde dpkg 1.17.14).

=back

=head1 FICHEIROS

=head2 Tabelas de arquitecturas

Todos estes ficheiros têm de estar presentes para o B<dpkg-architecture>
funcionar. A sua localização pode ser sobreposta durante o funcionamento com
a variável de ambiente B<DPKG_DATADIR>. Estas tabelas contêm um pseudo-campo
B<Version> de formato na sua primeira linha para marcar o seu formato, para
que os analisadores possam verificar se o compreendem, tal como "#
Version=1.0".

=over 

=item I<%PKGDATADIR%/cputable>

Tabela de nomes de CPU conhecidas e o mapear delas para o seu nome
GNU. Formato versão 1.0 (desde dpkg 1.13.2).

=item I<%PKGDATADIR%/ostable>

Tabela de nomes de sistemas operativos conhecidos e o mapear deles para o
seu nome GNU. Formato versão 2.0 (desde dpkg 1.18.11).

=item I<%PKGDATADIR%/tupletable>

Mapeamento entre tuples de arquitectura Debian e nomes de arquitectura
Debian. Versão de formato 1.0 (desde dpkg 1.18.11).

=item I<%PKGDATADIR%/abitable>

Tabela de sobreposições de atributos ABI de arquitectura Debian. Versão de
formato 2.0 (desde dpkg 1.18.11).

=back

=head2 Suporte a empacotamento

=over 

=item I<%PKGDATADIR%/architecture.mk>

Fragmento do Makefile cuja propriedade define e exporta todas as variáveis
que o B<dpkg-architecture> gera como resultado (desde dpkg 1.16.1).

=back

=head1 EXEMPLOS

B<dpkg-buildpackage> aceita a opção B<-a> e passa-a para
B<dpkg-architecture>. Outros exemplos:

=over 

 CC=i386-gnu-gcc dpkg-architecture -c debian/rules build

 eval $(dpkg-architecture -u)

=back

Verifica se a arquitectura actual ou da máquina especificada é igual a uma
arquitectura:

=over 

 dpkg-architecture -elinux-alpha

 dpkg-architecture -amips -elinux-mips

=back

Verifica se a arquitectura actual ou da máquina especificada é um sistema
Linux.

=over 

 dpkg-architecture -ilinux-any

 dpkg-architecture -ai386 -ilinux-any

=back

=head2 Utilização em debian/rules

As variáveis de ambiente definidas pelo B<dpkg-architecture> são passadas
para I<debian/rules> como variáveis do make (veja a documentação do
make). No entanto, você não deve confiar nelas, porque prejudicam a
invocação manual do script. Em vez disso, você deve sempre inicializá-las
usando B<dpkg-architecture> com a opção B<-q>. Aqui estão alguns exemplos,
que também mostram como você pode melhorar o suporte a compilação cruzada no
seu pacote:

Obter o tipo de sistema GNU e reencaminhá-lo para ./configure:

=over 

 DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
 DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
 [...]
 ifeq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE))
  confflags += --build=$(DEB_HOST_GNU_TYPE)
  else
   confflags += --build=$(DEB_BUILD_GNU_TYPE) \
                --host=$(DEB_HOST_GNU_TYPE)
 endif
 [...]
 ./configure $(confflags)

=back

Fazer algo apenas para uma arquitectura específica:

=over 

 DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH)

 ifeq ($(DEB_HOST_ARCH),alpha)
   [...]
 endif

=back

ou se você apenas precisar de verificar o tipo de CPU ou SO, use as
variáveis B<DEB_HOST_ARCH_CPU> ou B<DEB_HOST_ARCH_OS>

Note que você também pode confiar num retalho externo do Makefile para
definir apropriadamente todas as variáveis que o B<dpkg-architecture> pode
fornecer.

=over 

 include %PKGDATADIR%/architecture.mk

 ifeq ($(DEB_HOST_ARCH),alpha)
   [...]
 endif

=back

Em qualquer dos casos, você nunca deverá usar o B<dpkg --print-architecture>
para obter informação de arquitectura durante uma compilação de pacote.

=head1 AMBIENTE

=over 

=item B<DPKG_DATADIR>

Se definida, será usada como o directório de dados do B<dpkg>, onde as
tabelas de arquitectura estão localizadas (desde 1.14.17). A predefinição é
«%PKGDATADIR%».

=item B<DPKG_COLORS>

Define o modo de cor (desde dpkg 1.18.5). Os valores actualmente aceites
são: B<auto> (predefinido), B<always> e B<never>.

=item B<DPKG_NLS>

Se definida, será usada para decidir se deve activar o Suporte a Linguagem
Nativa. Também como conhecido como suporte de internacionalização (ou i18n)
(desde dpkg 1.19.0). Os valores aceites são B<0> e B<1> (predefinição).

=back

=head1 NOTAS

Todos comandos e nomes de opções longos disponíveis apenas desde dpkg
1.17.17.

=head1 VEJA TAMBÉM

B<dpkg-buildpackage>(1).


=head1 TRADUÇÃO

Américo Monteiro

Se encontrar algum erro na tradução deste documento, por favor comunique para
Américo Monteiro <a_monteiro@gmx.com>.