Bug 25663

Summary: [FR] add whichsys.c32
Product: Sisyphus Reporter: Michael Shigorin <mike>
Component: syslinuxAssignee: Sergey V Turchin <zerg>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: enhancement    
Priority: P3 CC: boyarsh, mike, ptrnine, vsu, zerg
Version: unstable   
Hardware: all   
OS: Linux   
URL: http://lists.altlinux.org/pipermail/sisyphus/2011-May/354240.html
Attachments:
Description Flags
syslinux-3.82-whichsys.diff
none
syslinux-3.82-whichsys.diff (updated)
none
syslinux-3.82-whichsys.diff (builds) none

Description Michael Shigorin 2011-05-24 13:47:38 MSK
Created attachment 4952 [details]
syslinux-3.82-whichsys.diff

Предлагаю добавить whichsys.c32 для обеспечения возможности реализации загрузки с локального диска вне зависимости от того, находится ли hybrid iso на CD/DVD или USB Flash: http://syslinux.zytor.com/wiki/index.php/Whichsys.c32

Для этого нужны два коммита из syslinux 4.x, по словам vsu@:
>   git cherry-pick 66c3eb4f6fc622fc3326956adfb0c6e23342b98f
>   git cherry-pick fd4d6e5845b9b84b25850bb2a908a23f7bb0c9de
> Ничего такого, что требовало бы именно syslinux-4.x, в этом
> модуле на самом деле нет.

Слил в syslinux-3.82-whichsys.diff согласно текущей схеме syslinux.git, проверяю.
Comment 1 Michael Shigorin 2011-05-24 14:01:02 MSK
Created attachment 4953 [details]
syslinux-3.82-whichsys.diff (updated)

Притёр по списку модулей в makefile патч, сборка взрывается:

whichsys.c:35:5: error: expected specifier-qualifier-list before 'bool'
whichsys.c: In function 'main':
whichsys.c:95:14: error: 'struct syslinux_parameter' has no member named 'option'
whichsys.c:95:24: error: 'true' undeclared (first use in this function)
whichsys.c:95:24: note: each undeclared identifier is reported only once for each function it appears in
whichsys.c:100:14: error: 'struct syslinux_parameter' has no member named 'option'
whichsys.c:105:14: error: 'struct syslinux_parameter' has no member named 'option'
whichsys.c:114:14: error: 'struct syslinux_parameter' has no member named 'option'
whichsys.c:117:14: error: 'struct syslinux_parameter' has no member named 'option'
whichsys.c:120:14: error: 'struct syslinux_parameter' has no member named 'option'
Comment 2 Sergey Vlasov 2011-05-24 22:34:18 MSK
Видно же, что не хватает #include <stdbool.h> (в не таких тухлых версиях syslinux-3.x он цепляется через com32.h).
Comment 3 Michael Shigorin 2011-05-25 13:20:49 MSK
Created attachment 4955 [details]
syslinux-3.82-whichsys.diff (builds)

Н-да, мне оказалось не видно.  Спасибо, так собралось.
Comment 4 Michael Shigorin 2011-05-25 13:39:31 MSK
Пушнул к себе в git; дистрибутив для проверки ещё не делал, хотя хороший повод обновить свою флэшку :)
Comment 5 Sergey V Turchin 2011-05-25 14:23:21 MSK
(В ответ на комментарий №2)
> в не таких тухлых версиях
Теперь можно погонять в Сизифе syslinux-3.86 (http://download.opensuse.org/source/distribution/11.4/repo/oss/suse/src/)
Comment 6 Sergey V Turchin 2011-05-25 14:23:22 MSK
(В ответ на комментарий №2)
> в не таких тухлых версиях
Теперь можно погонять в Сизифе syslinux-3.86 (http://download.opensuse.org/source/distribution/11.4/repo/oss/suse/src/)
Comment 7 Sergey V Turchin 2011-05-25 18:21:09 MSK
syslinux-3.86-alt3
Comment 8 Sergey V Turchin 2011-05-25 18:21:10 MSK
syslinux-3.86-alt3
Comment 9 Michael Shigorin 2011-05-25 19:19:53 MSK
Спасибо, будем посмотреть :)