aboutsummaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile56
1 files changed, 49 insertions, 7 deletions
diff --git a/Makefile b/Makefile
index 66b5025..7504c54 100644
--- a/Makefile
+++ b/Makefile
@@ -1,22 +1,64 @@
+.PHONY: all help parse_kconfig write_config build run test clean clean_linux clean_buildroot mlinux mbuildroot
all: parse_kconfig write_config
-parse_kconfig:
- @$(MAKE) -C scripts/parse_kconfig/
+help:
+ @echo "all - Builds basic programs and prints message about next steps."
+ @echo "help - Prints this text"
+ @echo "mbuildroot - Calls 'make menuconfig' in buildroot folder. Use this for"
+ @echo " buildroot configuration."
+ @echo "mlinux - Calls 'make menuconfig' in linux folder. Use this for linux"
+ @echo " configuration."
+ @echo "test - Executes boot and benchmark test. You should use this before"
+ @echo " target run. This target is for testing if initial kernel"
+ @echo " configuration, buildroot configuration and benchmark are"
+ @echo " configured right."
+ @echo "run - Executes loop of kernel building, booting and benchmark execution."
+ @echo "evaluate - Creating result statistics from generated data."
+ @echo
+ @echo "clean - Cleans all generated files. Except those in linux and buildroot."
+ @echo "clean_linux - Executes 'make clean' in linux folder."
+ @echo "clean_buildroot - Executes 'make clean' in buildroot folder."
-write_config:
- @$(MAKE) -C scripts/write_config/
+mbuildroot:
+ $(MAKE) -C scripts/buildroot menuconfig
+
+mlinux:
+ $(MAKE) -C linux menuconfig
-main_loop: kconfig_parser
+test: build/initram.gz
+ @ #TODO
+
+run: kconfig_parser write_config build/initram.gz
scripts/main_loop.py
+evaluate:
+ @ #TODO
clean:
@$(MAKE) -C scripts/parse_kconfig/ clean
@$(MAKE) -C scripts/write_config/ clean
- $(RM) linux/.config
$(RM) -r build
-# Linux has separate clean option because it takes more time and because in most of the time it is not required clean
clean_linux:
@$(MAKE) -C linux clean
+
+clean_buildroot:
+ @$(MAKE) -C scripts/buildroot clean
+
+#######################################
+
+parse_kconfig:
+ @$(MAKE) -C scripts/parse_kconfig/
+
+write_config:
+ @$(MAKE) -C scripts/write_config/
+
+build:
+ mkdir $@
+
+build/initram.gz: scripts/buildroot/.config build
+ @$(MAKE) -C scripts/buildroot
+ mv scripts/buildroot/output/images/rootfs.cpio.gz
+
+scripts/buildroot/.config: mbuildroot