The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"создание порта под FreeBSD"
Вариант для распечатки Архивированная нить - только для чтения! 
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"создание порта под FreeBSD"
Сообщение от forsite emailИскать по авторуВ закладки(??) on 05-Янв-05, 14:30  (MSK)
Создаю порт одной программы под FreeBSD. Столкнулся со следующей проблемой: автор софта при создании архива пользовался не gzip/bzip2, а zip.

При этом упаковывал он файлы, видимо, под форточками, в связи с чем часть файлов, относящихся к исходному тексту программы (а конкретно файла-заголовки (.h)), упакованы ЗАГЛАВНЫМИ БУКВАМИ.

zip, как известно, регистр букв запоминает. При этом в самих исходниках ссылки на эти заголовки прописаны строчными буквами (include "header.h"). В связи с чем при компиляции программы, естественно, возникает ошибка.

У меня есть четыре пути решения проблемы:

1. Пересобрать свой архив программы, создав нормальный tar.gz (и разместить его у себя на серваке).

2. Поправить соответствующим образом Makefile, чтобы при сборке софта из порта научить make каким-то образом задавать ключи команде unzip, чтобы все файлы распаковывались lowercase (unzip -l, по-моему).

3. Поправить соответствующим образом Makefile, чтобы перед сборкой софта скрипт пробегался бы по дереву программы и переименовывал необходимые файлы из заглавных в строчные.

4. Сделать патчи к исходникам, чтобы вставки include содержали бы ссылки за файлы с ЗАГЛАВНЫМИ БУКВАМИ (include "HEADER.H").

---

Первый и четвёртый варианты мне кажутся почему-то идеологически неизящными (хотя если я ошибаюсь, поправьте меня).

Второй вариант интереснее, но я не уверен, что можно задавать ключи команде unzip (по крайней мере в porter's handbook я это не нашёл).

ну, и третий вариант очевиден и, скорее всего, я на нём остановлюсь. Но хотелось бы в Makefile не перечислять все файлы, подлежащие переименованию (mv HEADER header; mv HEX hex etc), а эту процедуру как-то автоматизировать.
В этой связи подскажите pls процедуру на шелле (awk, tr etc), позволяющую пробежаться по дереву программы и переименовать все файлы из заглавных букв в строчные.

Заранее спасибо.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "создание порта под FreeBSD"
Сообщение от forsite Искать по авторуВ закладки(ok) on 06-Янв-05, 01:16  (MSK)
Всё, проблема решена. Спасибо.
  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру