You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

171 lines
8.3 KiB

3 years ago
== Переменные make ==
Переменные могут быть заданы, как в команде сборки
в качестве аргументов, так и в файле настроек
$HOME/.mkimage/profiles.mk.
При запуске на сборку принимается ряд переменных
(см. тж. profiles.mk.sample):
* APTCONF
** задаёт путь к требуемому apt.conf
** значение: пусто (по умолчанию системный) либо строка
** см. image.in/Makefile, doc/apt.conf.sample
* ARCH
** задаёт целевую архитектуру образов
** значение: пусто (по умолчанию авто) либо строка
** см. lib/build.mk
* ARCHES
** задаёт набор целевых архитектур при параметрическом задании APTCONF
** значение: пусто (по умолчанию авто) либо список через пробел
** см. Makefile, doc/profiles.mk.sample
* AUTOCLEAN
** включает уборку (distclean) после успешной сборки образа
** значение: пусто (по умолчанию нет) либо любая строка
** см. lib/build.mk
* BELL
** подаёт сигнал после завершения сборки
** значение: пусто (по умолчанию нет) либо любая строка
** см. lib/build.mk
* BRANCH
** указывает для какого бранча производится сборка
** собирает вместо регулярок стартеркиты
** значение: пусто (сборка для Сизифа) либо имя бранча
** задаёт переменную "STARTERKIT := mixin/starterkit"
** см. doc/branch.txt main.mk, conf.d/mixin.mk
* BUILDDIR
** задаёт каталог генерируемого профиля и сборки
** значение: пусто (по умолчанию авто) либо строка
** см. lib/profile.mk
* BUILDDIR_PREFIX
** задаёт префикс каталога генерируемого профиля и сборки
** значение: строка; по умолчанию выбирается алгоритмически
** см. main.mk
* BUILDLOG
** задаёт путь к файлу журнала сборки/очистки
** значение: $(BUILDDIR)/build.log (по умолчанию) либо строка
** см. lib/log.mk
* CHECK
** включает режим проверки сборки конфигурации (без сборки образа)
** значение:
** пусто (по умолчанию) - проверка не осуществляется;
** 0 - прверяется только конфигурация, списки пакетов не проверяются;
** другое значение - полная проверка.
** см. lib/build.mk, lib/clean.mk
* CLEAN
** экономия RAM+swap при сборке в tmpfs, иначе места на диске
** очистка рабочего каталога после успешной сборки очередной стадии
** может помешать использовать некоторые варианты отладки
** значение: пусто, 0, 1, 2; по умолчанию пусто при DEBUG, иначе 1
** см. lib/clean.mk
* DEBUG
** включает средства отладки, может отключить зачистку после сборки
** значение: пусто (по умолчанию), 1 или 2
** см. lib/log.mk, lib/clean.mk
* DISTRO_VERSION
** задаёт версию дистрибутива, если применимо
** значение: пусто (по умолчанию) либо любая строка
** см. image.in/Makefile
* HOMEPAGE, HOMENAME, HOMEWAIT
** указывают адрес, название и таймаут перехода для домашней страницы
** значение: корректный URL, строка, целое неотрицательное число
** см. features.in/live/generate.mk (тж. по умолчаниям)
* IMAGEDIR
** указывает путь для сохранения собранного образа
** значение: равно $HOME/out, если существует, иначе $(BUILDDIR)/out
** (по умолчанию), либо другой путь
** см. lib/profile.mk
* ISOHYBRID
** включает создание гибриднго ISO-образа
** значение: пусто (по умолчанию) либо любая строка
** см. features.in/pack/config.mk, features.in/isohybrid/config.mk
* LOGDIR
** указывает путь для сохранения логов сборки
** значение: равно $(IMAGEDIR) (по умолчанию), либо другой путь
** NB: в силу специфики обработки передаётся только явно
** см. lib/build.mk, lib/profile.mk
* MKIMAGE_PREFIX
** указывает путь до mkimage. Если параметр не указан, то используется системный mkimage
* NICE
** понижает нагрузку системы сборочной задачей
** значение: пусто (по умолчанию) либо любая строка
** см. lib/build.mk
* NO_SYMLINK
** не создавать символические ссылки на собранный образ
** значение: пусто (по умолчанию) либо любая строка
** см. image.in/Makefile
* QUIET
** отключает поясняющие сообщения при сборке (например, под cron)
** значение: пусто (по умолчанию) либо любая строка
** см. Makefile, lib/build.mk, lib/clean.mk, lib/profile.mk
* REPORT
** запрашивает создание отчётов о собранном образе
** значение: пусто (по умолчанию) либо любая строка
** см. Makefile, report.mk, lib/report.mk
* ROOTPW
** устанавливает пароль root по умолчанию для образов виртуальных машин
** значение: пусто (по умолчанию root) либо строка
** см. features.in/deflogin/rootfs/image-scripts.d/50-root
* SAVE_PROFILE
** сохраняет архив сгенерированного профиля в .disk/
** значение: пусто (по умолчанию) либо любая строка
** см. image.in/Makefile
* SORTDIR
** дополнительно структурирует каталог собранных образов
** значение: пусто (по умолчанию) либо строка
*** например, '$(IMAGE_NAME)/$(DATE)'
** см. image.in/Makefile
* SQUASHFS
** определяет характер сжатия squashfs для stage2
** значение:
*** пусто (по умолчанию) либо normal: xz
*** tight: xz с -Xbcj по платформе (лучше, но дольше -- подбор в два прохода)
*** fast: gzip/lzo (быстрее запаковывается и распаковывается, меньше степень)
** см. features.in/stage2/stage1/scripts.d/03-test-kernel
* STATUS
** добавляет в имя образа указанный префикс
** значение:
*** пусто (по умолчанию) либо строка (например, "alpha", "beta")
** см. image.in/Makefile
* VM_SAVE_TARBALL
** указывает, что нужно сохранить промежуточный тарбол, из которого
** создаётся образ виртуальной машины, в заданном формате
** значения: tar tar.gz tar.xz
** см. features.in/build-vm/lib/90-build-vm.mk
* VM_SIZE
** задаёт размер несжатого образа виртуальной машины в байтах
** значение: пусто (по умолчанию двойной размер чрута) или целое
** см. features.in/build-vm/lib/90-build-vm.mk, bin/tar2vm
[float]
=== пример ===
make DEBUG=1 CLEAN=1 syslinux.iso