* [devel] раненый make
@ 2012-10-05 12:37 Alexey Morozov
2012-10-05 13:37 ` REAL
0 siblings, 1 reply; 8+ messages in thread
From: Alexey Morozov @ 2012-10-05 12:37 UTC (permalink / raw)
To: ALT Linux Team development discussions
Здравствуйте!
Пару недель назад у нас перестал собираться kdevelop. Произошло это,
вероятно, потому что был выкачен make 2:3.82-alt4.
Дело в том, что в kdevelop есть специальный _тесткейс_ , в котором в
имени исходного файла присутствует пробел:
debuggers/gdb/unittests/debugee space.cpp
При этом cmake генерирует вот такую сборочную зависимость в make-файлах:
debuggers/gdb/unittests/CMakeFiles/debugeespace.dir/debugee_space.o:
../debuggers/gdb/unittests/debugee\ space.cpp
Если я правильно понимаю, с точки зрения документации по make
зависимость описана правильно (по крайней мере, я нашёл такое:
http://lists.gnu.org/archive/html/make-w32/2009-04/msg00021.html ).
Собственно, вопрос: политика партии запрещает наличие пробелов в именах
файлов, участвующих в сборке (и этому есть какие-то разумные
обоснования), или это побочный эффект от не слишком удачного патча от
Ralf Wildenhues ?
На прямо сейчас я, конечно, отключу этот тесткейс, но, очевидно, это не
решение проблемы, если это вообще проблема, а не ожидаемое поведение.
С уважением,
Алексей Морозов
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [devel] раненый make
2012-10-05 12:37 [devel] раненый make Alexey Morozov
@ 2012-10-05 13:37 ` REAL
2012-10-05 14:09 ` Sergey V Turchin
0 siblings, 1 reply; 8+ messages in thread
From: REAL @ 2012-10-05 13:37 UTC (permalink / raw)
To: ALT Linux Team development discussions
05.10.2012 19:37, Alexey Morozov пишет:
> Дело в том, что в kdevelop есть специальный _тесткейс_ , в котором в
> имени исходного файла присутствует пробел:
>
> debuggers/gdb/unittests/debugee space.cpp
>
> При этом cmake генерирует вот такую сборочную зависимость в make-файлах:
>
> debuggers/gdb/unittests/CMakeFiles/debugeespace.dir/debugee_space.o:
> ../debuggers/gdb/unittests/debugee\ space.cpp
make здесь ни при чём, всё дело в баге в cmake.
--
REAL aka Евгений Ростовцев, программист ЦНИТ КемГУ
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [devel] раненый make
2012-10-05 13:37 ` REAL
@ 2012-10-05 14:09 ` Sergey V Turchin
2012-10-05 15:04 ` Alexey Morozov
0 siblings, 1 reply; 8+ messages in thread
From: Sergey V Turchin @ 2012-10-05 14:09 UTC (permalink / raw)
To: ALT Linux Team development discussions
[-- Attachment #1: Type: text/plain, Size: 222 bytes --]
On 5 октября 2012 20:37:38 REAL wrote:
[...]
> make здесь ни при чём, всё дело в баге в cmake.
http://bugs.altlinux.org/27779
--
Regards, Sergey. ALT Linux, http://www.altlinux.ru/
[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 198 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [devel] раненый make
2012-10-05 14:09 ` Sergey V Turchin
@ 2012-10-05 15:04 ` Alexey Morozov
2012-10-05 15:34 ` Alexey Morozov
0 siblings, 1 reply; 8+ messages in thread
From: Alexey Morozov @ 2012-10-05 15:04 UTC (permalink / raw)
To: devel
Парни, вы простите, но я на руках имею вполне корректно выглядящие
.make-файлы:
debuggers/gdb/unittests/CMakeFiles/debugeespace.dir/debugee_space.o:
../debuggers/gdb/unittests/debugee\ space.cpp
$(CMAKE_COMMAND) -E cmake_progress_report
/usr/src/RPM/BUILD/kdevelop-4.3.1/BUILD-x86_64-alt-linux/CMakeFiles
$(CMAKE_PROGRESS_1) @$(CMAKE_COMMAND) -E cmake_echo_color
--switch=$(COLOR) --green "Building CXX object
debuggers/gdb/unittests/CMakeFiles/debugeespace.dir/debugee_space.o"
cd
/usr/src/RPM/BUILD/kdevelop-4.3.1/BUILD-x86_64-alt-linux/debuggers/gdb/unittests
&& /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o
CMakeFiles/debugeespace.dir/debugee_space.o -c
"/usr/src/RPM/BUILD/kdevelop-4.3.1/debuggers/gdb/unittests/debugee
space.cpp"
Сгенерированная cmake'ом сборочная последовательность - вполне рабочая,
в этом можно убедиться, просто убрав зависимость на файл с пробелом в имени.
Если заменить зависимость на файл с пробелом в имени на файл без пробела,
находящийся в том же каталоге, что и "плохой" файл, то тоже всё работает.
Кроме того, любой может проделать следующее:
[builder@localhost ~]$ touch 'file with space'
[builder@localhost ~]$ cat >Makefile
all: file\ with\ space
@echo done
[builder@localhost ~]$ make
make: *** No rule to make target `file', needed by `all'. Stop.
[builder@localhost ~]$ _
Следовательно, проблема ровно в зависимости, в том как она выражена.
Из того, что я успел прочитать в интернетах, зависимости на файлы с
пробелами в имени должны выглядеть именно так. Следовательно, или меня
обманывают интернеты, и такие зависимости должны выглядеть как-то иначе
(btw я не смог придумать вменяемого работающего варианта), или,
нувыпонели...
Из того, что обсуждается в
http://stackoverflow.com/questions/668322/what-is-the-most-reliable-way-of-using-gnumake-with-filenames-containing-spaces
и
http://savannah.gnu.org/bugs/?712
видно, что проблема в GNU make так-таки существует.
Кроме того, сборка kdevelop сломалась не 1-го сентября, когда Дубровский
залил
новую версию cmake, а ближе к концу месяца, аккурат, когда была залита новая
сборка make, как раз с упомянутым патчем. Убирать cmake'овые тесты, как это
сделал Ростовцев в cmake-2.8.9-alt1.1, - это, конечно, решение, но,
ей-богу, от
таких решений сильно пахнет.
АМ
Пт 05 окт 2012 21:09:53, Sergey V Turchin писал:
>
> On 5 октября 2012 20:37:38 REAL wrote:
>
> [...]
>>
>> make здесь ни при чём, всё дело в баге в cmake.
>
> http://bugs.altlinux.org/27779
>
>
>
> _______________________________________________
> Devel mailing list
> Devel@lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/devel
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [devel] раненый make
2012-10-05 15:04 ` Alexey Morozov
@ 2012-10-05 15:34 ` Alexey Morozov
2012-10-05 15:55 ` Alexey Morozov
2012-10-05 23:09 ` Dmitry V. Levin
0 siblings, 2 replies; 8+ messages in thread
From: Alexey Morozov @ 2012-10-05 15:34 UTC (permalink / raw)
To: devel
Я погорячился насчёт make-3.82-alt4, проблема возникла в
make-3.82-alt3, но её не было актуальном до него 3.81-alt5:
alex@rhyme ~/RPM $ lftpget
ftp://ftp.altlinux.org/pub/distributions/archive/Sisyphus/2012/09/25/x86_64/RPMS.classic/make-3.82-alt3.x86_64.rpm
alex@rhyme ~/RPM $ mv make-3.82-alt3.x86_64.rpm hsh/chroot/.in
alex@rhyme ~/RPM $ hsh-shell hsh --rooter
[root@localhost .in]# rpm -Uvh --oldpackage /.in/make-3.82-alt3.x86_64.rpm
Preparing...####################################################################################################
make####################################################################################################
<13>Oct 5 15:18:47 rpm: make-2:3.82-alt3 installed
<13>Oct 5 15:18:47 rpm: make-2:3.82-alt4 removed
Running /usr/lib/rpm/posttrans-filetriggers
[root@localhost .in]# cd ~builder/
[root@localhost src]# make
make: *** No rule to make target `file', needed by `all'. Stop.
[root@localhost .in]# logout
alex@rhyme ~/RPM $ lftpget
ftp://ftp.altlinux.org/pub/distributions/archive/Sisyphus/2012/09/19/x86_64/RPMS.classic/make-3.81-alt5.x86_64.rpm
alex@rhyme ~/RPM $ mv make-3.81-alt5.x86_64.rpm hsh/chroot/.in
alex@rhyme ~/RPM $ hsh-shell hsh --rooter
[root@localhost .in]# rpm -Uvh --oldpackage /.in/make-3.81-alt5.x86_64.rpm
Preparing...####################################################################################################
make####################################################################################################
<13>Oct 5 15:27:18 rpm: make-2:3.81-alt5 installed
<13>Oct 5 15:27:19 rpm: make-2:3.82-alt3 removed
Running /usr/lib/rpm/posttrans-filetriggers
[root@localhost .in]# cd ~builder/
[root@localhost src]# make
done
[root@localhost src]# _
05.10.2012 22:04, Alexey Morozov пишет:
> Парни, вы простите, но я на руках имею вполне корректно выглядящие
> .make-файлы:
>
> debuggers/gdb/unittests/CMakeFiles/debugeespace.dir/debugee_space.o:
> ../debuggers/gdb/unittests/debugee\ space.cpp
> $(CMAKE_COMMAND) -E cmake_progress_report
> /usr/src/RPM/BUILD/kdevelop-4.3.1/BUILD-x86_64-alt-linux/CMakeFiles
> $(CMAKE_PROGRESS_1) @$(CMAKE_COMMAND) -E cmake_echo_color
> --switch=$(COLOR) --green "Building CXX object
> debuggers/gdb/unittests/CMakeFiles/debugeespace.dir/debugee_space.o"
> cd
> /usr/src/RPM/BUILD/kdevelop-4.3.1/BUILD-x86_64-alt-linux/debuggers/gdb/unittests
> && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o
> CMakeFiles/debugeespace.dir/debugee_space.o -c
> "/usr/src/RPM/BUILD/kdevelop-4.3.1/debuggers/gdb/unittests/debugee
> space.cpp"
>
> Сгенерированная cmake'ом сборочная последовательность - вполне рабочая,
> в этом можно убедиться, просто убрав зависимость на файл с пробелом в имени.
> Если заменить зависимость на файл с пробелом в имени на файл без пробела,
> находящийся в том же каталоге, что и "плохой" файл, то тоже всё работает.
>
> Кроме того, любой может проделать следующее:
>
> [builder@localhost ~]$ touch 'file with space'
> [builder@localhost ~]$ cat >Makefile
> all: file\ with\ space
> @echo done
> [builder@localhost ~]$ make
> make: *** No rule to make target `file', needed by `all'. Stop.
> [builder@localhost ~]$ _
>
> Следовательно, проблема ровно в зависимости, в том как она выражена.
> Из того, что я успел прочитать в интернетах, зависимости на файлы с
> пробелами в имени должны выглядеть именно так. Следовательно, или меня
> обманывают интернеты, и такие зависимости должны выглядеть как-то иначе
> (btw я не смог придумать вменяемого работающего варианта), или,
> нувыпонели...
>
> Из того, что обсуждается в
>
> http://stackoverflow.com/questions/668322/what-is-the-most-reliable-way-of-using-gnumake-with-filenames-containing-spaces
>
> и
>
> http://savannah.gnu.org/bugs/?712
>
> видно, что проблема в GNU make так-таки существует.
>
> Кроме того, сборка kdevelop сломалась не 1-го сентября, когда Дубровский
> залил
> новую версию cmake, а ближе к концу месяца, аккурат, когда была залита новая
> сборка make, как раз с упомянутым патчем. Убирать cmake'овые тесты, как это
> сделал Ростовцев в cmake-2.8.9-alt1.1, - это, конечно, решение, но,
> ей-богу, от
> таких решений сильно пахнет.
>
> АМ
>
> Пт 05 окт 2012 21:09:53, Sergey V Turchin писал:
>> On 5 октября 2012 20:37:38 REAL wrote:
>>
>> [...]
>>> make здесь ни при чём, всё дело в баге в cmake.
>> http://bugs.altlinux.org/27779
>>
>>
>>
>> _______________________________________________
>> Devel mailing list
>> Devel@lists.altlinux.org
>> https://lists.altlinux.org/mailman/listinfo/devel
>
> _______________________________________________
> Devel mailing list
> Devel@lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/devel
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [devel] раненый make
2012-10-05 15:34 ` Alexey Morozov
@ 2012-10-05 15:55 ` Alexey Morozov
2012-10-05 23:09 ` Dmitry V. Levin
1 sibling, 0 replies; 8+ messages in thread
From: Alexey Morozov @ 2012-10-05 15:55 UTC (permalink / raw)
To: devel
ну и напоследок, стра[нш]ное:
alex@rhyme ~/RPM $ lftpget
http://fedora-mirror02.rbc.ru/pub/fedora/linux/development/rawhide/x86_64/os/Packages/m/make-3.82-13.fc19.x86_64.rpm
alex@rhyme ~/RPM $ mv make-3.82-13.fc19.x86_64.rpm hsh/chroot/.in
alex@rhyme ~/RPM $ hsh-shell hsh
[builder@localhost .in]$ cd
[builder@localhost ~]$ rpm2cpio /.in/make-3.82-13.fc19.x86_64.rpm | cpio
--extract --make-directories ./usr/bin/make
2278 blocks
[builder@localhost ~]$ usr/bin/make
done
05.10.2012 22:34, Alexey Morozov пишет:
> Я погорячился насчёт make-3.82-alt4, проблема возникла в
> make-3.82-alt3, но её не было актуальном до него 3.81-alt5:
>
> alex@rhyme ~/RPM $ lftpget
> ftp://ftp.altlinux.org/pub/distributions/archive/Sisyphus/2012/09/25/x86_64/RPMS.classic/make-3.82-alt3.x86_64.rpm
> alex@rhyme ~/RPM $ mv make-3.82-alt3.x86_64.rpm hsh/chroot/.in
> alex@rhyme ~/RPM $ hsh-shell hsh --rooter
> [root@localhost .in]# rpm -Uvh --oldpackage /.in/make-3.82-alt3.x86_64.rpm
> Preparing...####################################################################################################
> make####################################################################################################
> <13>Oct 5 15:18:47 rpm: make-2:3.82-alt3 installed
> <13>Oct 5 15:18:47 rpm: make-2:3.82-alt4 removed
> Running /usr/lib/rpm/posttrans-filetriggers
> [root@localhost .in]# cd ~builder/
> [root@localhost src]# make
> make: *** No rule to make target `file', needed by `all'. Stop.
> [root@localhost .in]# logout
> alex@rhyme ~/RPM $ lftpget
> ftp://ftp.altlinux.org/pub/distributions/archive/Sisyphus/2012/09/19/x86_64/RPMS.classic/make-3.81-alt5.x86_64.rpm
>
> alex@rhyme ~/RPM $ mv make-3.81-alt5.x86_64.rpm hsh/chroot/.in
> alex@rhyme ~/RPM $ hsh-shell hsh --rooter
> [root@localhost .in]# rpm -Uvh --oldpackage /.in/make-3.81-alt5.x86_64.rpm
> Preparing...####################################################################################################
> make####################################################################################################
> <13>Oct 5 15:27:18 rpm: make-2:3.81-alt5 installed
> <13>Oct 5 15:27:19 rpm: make-2:3.82-alt3 removed
> Running /usr/lib/rpm/posttrans-filetriggers
> [root@localhost .in]# cd ~builder/
> [root@localhost src]# make
> done
> [root@localhost src]# _
>
>
> 05.10.2012 22:04, Alexey Morozov пишет:
>> Парни, вы простите, но я на руках имею вполне корректно выглядящие
>> .make-файлы:
>>
>> debuggers/gdb/unittests/CMakeFiles/debugeespace.dir/debugee_space.o:
>> ../debuggers/gdb/unittests/debugee\ space.cpp
>> $(CMAKE_COMMAND) -E cmake_progress_report
>> /usr/src/RPM/BUILD/kdevelop-4.3.1/BUILD-x86_64-alt-linux/CMakeFiles
>> $(CMAKE_PROGRESS_1) @$(CMAKE_COMMAND) -E cmake_echo_color
>> --switch=$(COLOR) --green "Building CXX object
>> debuggers/gdb/unittests/CMakeFiles/debugeespace.dir/debugee_space.o"
>> cd
>> /usr/src/RPM/BUILD/kdevelop-4.3.1/BUILD-x86_64-alt-linux/debuggers/gdb/unittests
>> && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o
>> CMakeFiles/debugeespace.dir/debugee_space.o -c
>> "/usr/src/RPM/BUILD/kdevelop-4.3.1/debuggers/gdb/unittests/debugee
>> space.cpp"
>>
>> Сгенерированная cmake'ом сборочная последовательность - вполне рабочая,
>> в этом можно убедиться, просто убрав зависимость на файл с пробелом в имени.
>> Если заменить зависимость на файл с пробелом в имени на файл без пробела,
>> находящийся в том же каталоге, что и "плохой" файл, то тоже всё работает.
>>
>> Кроме того, любой может проделать следующее:
>>
>> [builder@localhost ~]$ touch 'file with space'
>> [builder@localhost ~]$ cat >Makefile
>> all: file\ with\ space
>> @echo done
>> [builder@localhost ~]$ make
>> make: *** No rule to make target `file', needed by `all'. Stop.
>> [builder@localhost ~]$ _
>>
>> Следовательно, проблема ровно в зависимости, в том как она выражена.
>> Из того, что я успел прочитать в интернетах, зависимости на файлы с
>> пробелами в имени должны выглядеть именно так. Следовательно, или меня
>> обманывают интернеты, и такие зависимости должны выглядеть как-то иначе
>> (btw я не смог придумать вменяемого работающего варианта), или,
>> нувыпонели...
>>
>> Из того, что обсуждается в
>>
>> http://stackoverflow.com/questions/668322/what-is-the-most-reliable-way-of-using-gnumake-with-filenames-containing-spaces
>>
>> и
>>
>> http://savannah.gnu.org/bugs/?712
>>
>> видно, что проблема в GNU make так-таки существует.
>>
>> Кроме того, сборка kdevelop сломалась не 1-го сентября, когда Дубровский
>> залил
>> новую версию cmake, а ближе к концу месяца, аккурат, когда была залита новая
>> сборка make, как раз с упомянутым патчем. Убирать cmake'овые тесты, как это
>> сделал Ростовцев в cmake-2.8.9-alt1.1, - это, конечно, решение, но,
>> ей-богу, от
>> таких решений сильно пахнет.
>>
>> АМ
>>
>> Пт 05 окт 2012 21:09:53, Sergey V Turchin писал:
>>> On 5 октября 2012 20:37:38 REAL wrote:
>>>
>>> [...]
>>>> make здесь ни при чём, всё дело в баге в cmake.
>>> http://bugs.altlinux.org/27779
>>>
>>>
>>>
>>> _______________________________________________
>>> Devel mailing list
>>> Devel@lists.altlinux.org
>>> https://lists.altlinux.org/mailman/listinfo/devel
>> _______________________________________________
>> Devel mailing list
>> Devel@lists.altlinux.org
>> https://lists.altlinux.org/mailman/listinfo/devel
> _______________________________________________
> Devel mailing list
> Devel@lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/devel
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [devel] раненый make
2012-10-05 15:34 ` Alexey Morozov
2012-10-05 15:55 ` Alexey Morozov
@ 2012-10-05 23:09 ` Dmitry V. Levin
2012-10-05 23:44 ` Dmitry V. Levin
1 sibling, 1 reply; 8+ messages in thread
From: Dmitry V. Levin @ 2012-10-05 23:09 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: Type: text/plain, Size: 426 bytes --]
On Fri, Oct 05, 2012 at 10:34:22PM +0700, Alexey Morozov wrote:
> Я погорячился насчёт make-3.82-alt4, проблема возникла в
> make-3.82-alt3, но её не было актуальном до него 3.81-alt5:
В 3.82-alt3 я портировал из cvs много патчей, в т.ч. исправляющих
квотирование. Оказывается, этого было мало, сейчас я спортировал еще
несколько и скоро соберу make-3.82-alt5, в котором этой баги не будет.
Спасибо,
--
ldv
[-- Attachment #2: Type: application/pgp-signature, Size: 198 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [devel] раненый make
2012-10-05 23:09 ` Dmitry V. Levin
@ 2012-10-05 23:44 ` Dmitry V. Levin
0 siblings, 0 replies; 8+ messages in thread
From: Dmitry V. Levin @ 2012-10-05 23:44 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: Type: text/plain, Size: 609 bytes --]
On Sat, Oct 06, 2012 at 03:09:06AM +0400, Dmitry V. Levin wrote:
> On Fri, Oct 05, 2012 at 10:34:22PM +0700, Alexey Morozov wrote:
> > Я погорячился насчёт make-3.82-alt4, проблема возникла в
> > make-3.82-alt3, но её не было актуальном до него 3.81-alt5:
>
> В 3.82-alt3 я портировал из cvs много патчей, в т.ч. исправляющих
> квотирование. Оказывается, этого было мало, сейчас я спортировал еще
> несколько и скоро соберу make-3.82-alt5, в котором этой баги не будет.
make-3.82-alt5 ушел в Сизиф. Тысяча извинений тем, кто ждет завершения
task#81290, но это был важный багфикс.
--
ldv
[-- Attachment #2: Type: application/pgp-signature, Size: 198 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2012-10-05 23:44 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-10-05 12:37 [devel] раненый make Alexey Morozov
2012-10-05 13:37 ` REAL
2012-10-05 14:09 ` Sergey V Turchin
2012-10-05 15:04 ` Alexey Morozov
2012-10-05 15:34 ` Alexey Morozov
2012-10-05 15:55 ` Alexey Morozov
2012-10-05 23:09 ` Dmitry V. Levin
2012-10-05 23:44 ` Dmitry V. Levin
ALT Linux Team development discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/devel/0 devel/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 devel/ http://lore.altlinux.org/devel \
devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
public-inbox-index devel
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.devel
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git