По роду деятельности мне необходимо было интегрировать в прошивку дополнительный софт, в моем случае это net-snmp и openvpn (которому нужны openssl и lzo), с другой стороны мне не нужны некоторые проги которые уже есть в прошивке например samba, на форуме ничего толкового не нашел, для Олега и других гуру которые собирают прошивку 10-d, это раз плюнуть, но мне интересно было самому разобраться и лишний раз приставать к гуру не хотелось.
Итак я нашел для себя некий путь интеграции дополнительного софта, который уже есть в optware , то бишь который ставится через ipkg в основную прошивку. За основу был взят optware http://svn.nslu2-linux.org/svnroot/optware/trunk/ и прошивка 10-d http://code.google.com/p/wl500g за что всем трудившимся над 10-d огромный респект.
Сборку прошивки начинаем как описано в доке. После того как сделали svn checkout в файл Makefile.top добавяем строчку
Code:
include ../optware-d/.config
сразу после первого include.
Прицепленный архив сохранить в /whatever-you-want/broadcom/src/
далее
Code:
tar -zxvf optware-d.tgz
Далее как по доке
Code:
cd /whatever-you-want/broadcom/src/1.9.2.7-d
make kernel
make
после этого следуя все той же доке перейти в папку gateway и также по доке дать команду make, теперь настало время для сборки optware-d
в файле optware-d/.config отметить какие именно пакеты нужны для сборки и после этого
Code:
cd ../optware-d
make checkout
make
make install
Ну и сборка trx
Code:
cd ../gateway
make install
========
Как это работает:
В optware-d/make.inst находятся mk файлы с переопределением целей install: в принципе там можно переопределить любую цель, но чаще всего приходится переопределять именно install, так как файлы инсталлятся вместо /opt в /usr. Посмотрев на примеры все должно стать понятно. Переопределение цели install требуется в том случае ели универсальная цель install которая находится в Makefile не сработала. Не весь софт имеет собственную цель install-strip в своих мэйкфайлах.
PS: В данный момент количество роутеров в подчинении у меня достигло практически 240 штук, в разработке находится система управления всем этим чудо набором. Централизованная система администрирования, обновления и мониторинга. Если кому интересно поучаствовать в разработке пишите.