![]() |
Поделиться |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
Поделиться |
![]()
Сообщение
#1
|
|
Мастер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователь Сообщений: 800 Регистрация: 9.7.2010 Вставить ник Цитата Пользователь №: 1865 Страна: Россия Город: Зарайск/Московской Пол: Муж. Репутация: ![]() ![]() ![]() |
Вопрос к спецам, есть исходники (конкретно вот этот гит icewm)
http://git.altlinux.org/srpms/i/icewm.git в спеке прописано наложение множества разных патчей : 31 Patch0: %name-alt-altconf.patch 32 Patch1: %name-alt-env.patch 33 Patch2: %name-alt-fonts.patch 34 Patch3: %name-alt-icons.patch 35 Patch4: %name-alt-readline.patch 36 Patch5: %name-alt-themes.patch 37 Patch6: %name-alt-icon_find.patch 38 Patch7: %name-alt-commands.patch 39 Patch8: %name-alt-aworkspaces.patch ,,,,,,,,.... 87 %patch0 -p2 88 %patch1 -p2 89 %patch2 -p2 90 %patch3 -p2 91 %patch4 -p2 92 %patch5 -p2 93 %patch6 -p2 94 %patch7 -p2 95 %patch8 -p2 ,,,,,,,,,,,,,,,,,,,, Как правильно наложить эти патчи, что-бы исходники стали содержать все используемые при сборке патчи, что-бы можно было сразу видеть то состояние кода, которое идёт не посредственно в компиляцию и сборку ? Можно ли их наложить такой командой из каталога, где находяться файлы патчей ? patch -p2 -i имя_патча Надо ли перед сборкой, после ручного наложения патчей, закоментировать в спеке эти строки ? |
|
|
![]()
Сообщение
#2
|
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователь Сообщений: 1826 Регистрация: 28.7.2010 Вставить ник Цитата Из: Берислав, Херсонщина Пользователь №: 1879 Страна: Украина Город: Не указан Пол: Муж. Репутация: ![]() ![]() ![]() |
"man patch" нужно курить. Никогда вне спек-файла не доводилось использовать.
-------------------- |
|
|
![]()
Сообщение
#3
|
|
Странник ![]() ![]() Группа: Пользователь Сообщений: 42 Регистрация: 4.4.2015 Вставить ник Цитата Пользователь №: 2795 Страна: Россия Город: Нижний Новгород Пол: Муж. Репутация: ![]() ![]() ![]() |
Вопрос к спецам, есть исходники (конкретно вот этот гит icewm) http://git.altlinux.org/srpms/i/icewm.git в спеке прописано наложение множества разных патчей : (scip) Как правильно наложить эти патчи, что-бы исходники стали содержать все используемые при сборке патчи, что-бы можно было сразу видеть то состояние кода, которое идёт не посредственно в компиляцию и сборку ? Можно ли их наложить такой командой из каталога, где находяться файлы патчей ? patch -p2 -i имя_патча Надо ли перед сборкой, после ручного наложения патчей, закоментировать в спеке эти строки ? 1. Внезапно patch -p1 -d icewm < ./имя.патча, они по-разному работают в спеке и в шелле. 2. Да. Но лучше так не делать, извлекать их потом оттуда -мучение, да и менее наглядно самому-же. |
|
|
![]()
Сообщение
#4
|
|
Мастер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователь Сообщений: 800 Регистрация: 9.7.2010 Вставить ник Цитата Пользователь №: 1865 Страна: Россия Город: Зарайск/Московской Пол: Муж. Репутация: ![]() ![]() ![]() |
1. Внезапно patch -p1 -d icewm < ./имя.патча, они по-разному работают в спеке и в шелле. 2. Да. Но лучше так не делать, извлекать их потом оттуда -мучение, да и менее наглядно самому-же. Дмитрий, ты смотришь как сборщик, а я смотрю с позиции кодера .... ![]() Пример, ковыряю код, нахожу функцию, которая работает не так, как мне надо, пытаюсь ее менять, но результат нулевой .... Хорошо, что сообразил запустить греп не в каталоге исходников, а в самом верхнем, и обнаружил, что несколько патчей по очереди меняют содержимое нужной функции .... ![]() ИМХО патч должен сидеть в тексте исходников со своими подробными коментами, а в виде отдельно налогаемого файла использовать их можно как временную заплатку до выхода исправленной версии, либо для передачи разработчику. |
|
|
![]()
Сообщение
#5
|
|
Странник ![]() ![]() Группа: Пользователь Сообщений: 42 Регистрация: 4.4.2015 Вставить ник Цитата Пользователь №: 2795 Страна: Россия Город: Нижний Новгород Пол: Муж. Репутация: ![]() ![]() ![]() |
Верно, в первую очередь сборщика.
Но, если изменение находится непосредственно в коде, ИМХО, это полноценный форк. Отдельно лежащие патчи показывают изменения, накладываемые на оригинальный исходник |
|
|
![]()
Сообщение
#6
|
|
Профессионал ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователь Сообщений: 4403 Регистрация: 17.9.2009 Вставить ник Цитата Пользователь №: 1617 Страна: Россия Город: Санкт-Петербург Пол: Муж. Репутация: ![]() ![]() ![]() |
|
|
|
![]()
Сообщение
#7
|
|
Мастер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователь Сообщений: 800 Регистрация: 9.7.2010 Вставить ник Цитата Пользователь №: 1865 Страна: Россия Город: Зарайск/Московской Пол: Муж. Репутация: ![]() ![]() ![]() |
Верно, в первую очередь сборщика. Но, если изменение находится непосредственно в коде, ИМХО, это полноценный форк. Отдельно лежащие патчи показывают изменения, накладываемые на оригинальный исходник Дмитрий, это не претензия к тебе, а скорее риторическое в "ни_куда", но я не понимаю, если патчи нужны для практически всех пользователей, почему разработчик их игнорирует, ладно, когда патч специфичен для конкретной версии Линукса, либо для конкретной задачи, которая нужна узкому кругу, тогда патч в виде отдельного файла оправдан. Но когда они годами болтаются и не прикладываются в исходную версию .... ![]() Да за такое сборщика хочется немножко стукнуть ![]() Стукнуть нужно не сборщика, он то как раз пытается, что-бы прога работала, а вот разработчика надо бы .... ![]() |
|
|
![]() ![]() |
![]() |
Текстовая версия | Сейчас: 29.3.2023, 11:59 |