Доброго дня!
Мне необходимо собрать ядро для нескольких процессоров, конфигурации хранится в файлах .config_dmXXX, где XXX - тип процессора.
Пока сделал так:
for i in 365 368; do\
cp --force $(LINUX)/.config_dm$$i $(LINUX)/.config;\
make --directory=$(LINUX) ARCH=arm CROSS_COMPILE=$(CROSS) uImage;\
cp --force $(LINUX)/arch/arm/boot/uImage uImage_dm$$i;\
done
Не нравится то, что необходимо каждый раз создавать .config. Пробовал передавать параметр KCONFIG_CONFIG, но без наличия .config ядро не собирается.
Вопрос - возможно ли указать в параметрах make название файла с конфигурацией?
Спасибо.
$ grep \\.config /path/to/kernel.org/Makefile
# A third alternative is to store a setting in .config so that plain
KCONFIG_CONFIG ?= .config
# To make sure we do not include .config for any of the *config targets
# of make so .config is not included in this case either (for *config).
# If .config is newer than include/config/auto.conf, someone tinkered
$(Q)if [ -f $(srctree)/.config -o -d $(srctree)/include/config ]; then \
MRPROPER_FILES += .config .config.old .version .old_version \
# mrproper - Delete all generated files, including .config
@echo ' make O=dir [targets] Locate all output files in "dir", including .config'
$ make ARCH=arm CROSS_COMPILE=arm_v5t_le- KCONFIG_CONFIG=.config_dm365 uImage
CHK include/linux/version.h
make[1]: `include/asm-arm/mach-types.h' is up to date.
CHK include/linux/utsrelease.h
CHK include/linux/compile.h
make[1]: *** No rule to make target `.config', needed by `kernel/config_data.gz'. Stop.
make: *** [kernel] Error 2
Пробовал закомментировать KCONFIG_CONFIG в Makefile - поведение идентично.
Не нравится то, что необходимо каждый раз создавать .config
как я понимаю на данный момент, вас смущает лишь наличие некоторых буковок в запускаемом вами скрипте, и вы хотите заменить эти буковки на другие·
если я правильно понял, могу посоветовать: смиритесь уж, буковки всё-таки не абсолютно взаимозаменяемы…