devel@ where you _can_ ask
 help / color / mirror / Atom feed
* Re: [newbies] [#192410] DONE (try 2) fossil.git=2.3-alt1
@ 2017-11-08 13:44 Ivan Zakharyaschev
  0 siblings, 0 replies; only message in thread
From: Ivan Zakharyaschev @ 2017-11-08 13:44 UTC (permalink / raw)
  To: devel-newbies; +Cc: grenka, bicorph

[-- Attachment #1: Type: text/plain, Size: 2333 bytes --]

Здравствуйте!

На тему 
https://lists.altlinux.org/pipermail/sisyphus-incominger/2017-November/474838.html 
есть такой совет будущему мейнтейнеру:

стоит взглянуть на лог сборки, чтобы увидеть нет ли там чего, что не 
соответствует задуманному -- 
http://git.altlinux.org/tasks/archive/done/_187/192410/build/100/x86_64/log 
.

Здесь обращает на себя внимание то, что в спеке мы потребовали компиляцию 
с -Werror (раз уж у нас действительно не осталось больше warnings), но на 
деле этот флаг не доехал до компилятора. Например:

cc -I. -I./src -Ibld -DFOSSIL_DYNAMIC_BUILD=1    -g -O2 
-DHAVE_AUTOCONFIG_H -D_HAVE_SQLITE_CONFIG_H  -o bld/add.o -c bld/add_.c

И вообще rpm-овские %optflags все не доехали. (Кстати, Андрей Савченко 
bicorph@ как раз днях устно высказывал предложение о том, как можно 
автоматически обнаруживать такие сборки и предупреждать мейнтейнеров. И 
мне это предложение нравится. Может быть, Андрей сделает соответствующий 
патч на rpm-build с соответствующим brp-скриптом.)

А пока нет такой автоматической проверки стоит глазами посмотреть и 
разобраться, как %optflags передать компилятору. (Это будет полезно и для 
сборки на всяких более экзотических архитектурах и платформах, где они 
хотели бы передавать специфичные более удачные %optflags во всех пакетах.)

С похожим случаем мне недавно помог (устно) разобраться ldv@.

Как обычно %optflags попадаю в CFLAGS в make?

Делается export CFLAGS=.... перед ./configure . См. значение макроса 
%configure, например: rpm --eval '%configure' . Оно их записывает в итоге 
в Makefile.

В этом спеке %configure не используется. Можно выставить ему CFLAGS 
аналогично. Советую проверить, что будет.

Будет не очень хорошо из-за -Werror. Это и объяснение, почему во многих 
других случаях может быть нехорошо от %def_enable Werror -- там, где 
используется %configure. (TODO для rpm-build: обрабытывать -Werror / 
%def_anable Werror по-другому, отдельно от остальных %optflags)

Так давайте сделаем export CFLAGS='%optflags' перед вызовом make.

Кажется, здесь Makefile написан так, что CFLAGS не имеет значения 
изначально, но используется в командах, так что воспримет значение из 
переменной окружения.

Хотелось бы увидеть доделанный в смысле передачи %optflags компилятору 
пакет fossil от grenka@, чтобы считать эту тему пройденной.

-- 
Best regards,
Ivan

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2017-11-08 13:44 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-11-08 13:44 [newbies] [#192410] DONE (try 2) fossil.git=2.3-alt1 Ivan Zakharyaschev

devel@ where you _can_ ask

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel-newbies/0 devel-newbies/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel-newbies devel-newbies/ http://lore.altlinux.org/devel-newbies \
		devel-newbies@lists.altlinux.org devel-newbies@lists.altlinux.ru devel-newbies@lists.altlinux.com
	public-inbox-index devel-newbies

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel-newbies


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git