diff --git a/Makefile b/Makefile index b88e2d5508437fea511b9506f6fd0ff04d5ff07f..a58ceef5391a8e33f53f677dda06260313944bb8 100644 --- a/Makefile +++ b/Makefile @@ -1,14 +1,17 @@ ## -## Makefile for Miosix np embedded OS -## TFT:Terraneo Federico Technlogies +## Makefile for Miosix embedded OS ## -MAKEFILE_VERSION := 1.02 -include miosix/config/Makefile.inc +MAKEFILE_VERSION := 1.03 +## Path to kernel directory +KPATH := miosix +## Path to config directory +CONFPATH := $(realpath $(KPATH)) +include $(CONFPATH)/config/Makefile.inc ## ## List here subdirectories which contains makefiles ## -SUBDIRS := miosix +SUBDIRS := $(KPATH) ## ## List here your source files (both .s, .c and .cpp) @@ -34,16 +37,19 @@ INCLUDE_DIRS := OBJ := $(addsuffix .o, $(basename $(SRC))) ## Includes the miosix base directory for C/C++ -CXXFLAGS := $(CXXFLAGS_BASE) -I. -Imiosix -Imiosix/arch/common \ - -Imiosix/$(ARCH_INC) -Imiosix/$(BOARD_INC) $(INCLUDE_DIRS) -CFLAGS := $(CFLAGS_BASE) -I. -Imiosix -Imiosix/arch/common \ - -Imiosix/$(ARCH_INC) -Imiosix/$(BOARD_INC) $(INCLUDE_DIRS) -AFLAGS := $(AFLAGS_BASE) -LFLAGS := $(LFLAGS_BASE) -DFLAGS := -MMD -MP - -LINK_LIBS := $(LIBS) -L./miosix -Wl,--start-group -lmiosix -lstdc++ -lc -lm \ - -lgcc -Wl,--end-group +## Always include CONFPATH first, as it overrides the config file location +CXXFLAGS := $(CXXFLAGS_BASE) -I$(CONFPATH) -I$(CONFPATH)/config/$(BOARD_INC) \ + -I. -I$(KPATH) -I$(KPATH)/arch/common -I$(KPATH)/$(ARCH_INC) \ + -I$(KPATH)/$(BOARD_INC) $(INCLUDE_DIRS) +CFLAGS := $(CFLAGS_BASE) -I$(CONFPATH) -I$(CONFPATH)/config/$(BOARD_INC) \ + -I. -I$(KPATH) -I$(KPATH)/arch/common -I$(KPATH)/$(ARCH_INC) \ + -I$(KPATH)/$(BOARD_INC) $(INCLUDE_DIRS) +AFLAGS := $(AFLAGS_BASE) +LFLAGS := $(LFLAGS_BASE) +DFLAGS := -MMD -MP + +LINK_LIBS := $(LIBS) -L$(KPATH) -Wl,--start-group -lmiosix -lstdc++ -lc \ + -lm -lgcc -Wl,--end-group all: all-recursive main @@ -53,10 +59,10 @@ program: $(PROGRAM_CMDLINE) all-recursive: - $(foreach i,$(SUBDIRS),$(MAKE) -C $(i) FOLDER="$(FOLDER) $(i)/" || exit 1;) + $(foreach i,$(SUBDIRS),$(MAKE) -C $(i) CONFPATH="$(CONFPATH)" || exit 1;) clean-recursive: - $(foreach i,$(SUBDIRS),$(MAKE) -C $(i) FOLDER="$(FOLDER) $(i)/" clean || exit 1;) + $(foreach i,$(SUBDIRS),$(MAKE) -C $(i) CONFPATH="$(CONFPATH)" clean || exit 1;) clean-topdir: -rm -f $(OBJ) main.elf main.hex main.bin main.map $(OBJ:.o=.d) @@ -68,7 +74,7 @@ main: main.elf main.elf: $(OBJ) all-recursive @ echo "linking" - $(CXX) $(LFLAGS) -o main.elf $(OBJ) miosix/$(BOOT_FILE) $(LINK_LIBS) + $(CXX) $(LFLAGS) -o main.elf $(OBJ) $(KPATH)/$(BOOT_FILE) $(LINK_LIBS) %.o: %.s $(AS) $(AFLAGS) $< -o $@ diff --git a/miosix/Makefile b/miosix/Makefile index 174a6157206534600dfddc6000d93ea440001c25..001ad2e183c541d64af0ef556cc89eb73becdff9 100644 --- a/miosix/Makefile +++ b/miosix/Makefile @@ -1,10 +1,12 @@ ## -## Makefile for Miosix np embedded OS -## TFT:Terraneo Federico Technlogies +## Makefile for Miosix embedded OS ## This makefile builds the whole kernel ## -MAKEFILE_VERSION := 1.02 -include config/Makefile.inc +MAKEFILE_VERSION := 1.03 +## Path to kernel directory +KPATH := . +## CONFPATH is forwarded by the parent Makefile +include $(CONFPATH)/config/Makefile.inc ## List of all Miosix OS source files that have no special requirements ## and that must be built for each architecture (both .c and .cpp) @@ -51,10 +53,11 @@ SRC += $(ARCH_SRC) OBJ := $(addsuffix .o, $(basename $(SRC))) ## Includes the miosix base directory for C/C++ -CXXFLAGS := $(CXXFLAGS_BASE) -I. -Iarch/common -I$(ARCH_INC) -I$(BOARD_INC) \ - -DCOMPILING_MIOSIX -CFLAGS := $(CFLAGS_BASE) -I. -Iarch/common -I$(ARCH_INC) -I$(BOARD_INC) \ - -DCOMPILING_MIOSIX +## Always include CONFPATH first, as it overrides the config file location +CXXFLAGS := $(CXXFLAGS_BASE) -I$(CONFPATH) -I$(CONFPATH)/config/$(BOARD_INC) \ + -I. -Iarch/common -I$(ARCH_INC) -I$(BOARD_INC) -DCOMPILING_MIOSIX +CFLAGS := $(CFLAGS_BASE) -I$(CONFPATH) -I$(CONFPATH)/config/$(BOARD_INC) \ + -I. -Iarch/common -I$(ARCH_INC) -I$(BOARD_INC) -DCOMPILING_MIOSIX AFLAGS := $(AFLAGS_BASE) DFLAGS := -MMD -MP diff --git a/miosix/_doc/textdoc/Changelog.txt b/miosix/_doc/textdoc/Changelog.txt index 2110733cab1edcf2aae532cf07b8bf2d36608410..5a89dfb924973ea39f0f0825744117314b749279 100644 --- a/miosix/_doc/textdoc/Changelog.txt +++ b/miosix/_doc/textdoc/Changelog.txt @@ -1,5 +1,11 @@ Changelog for Miosix np embedded OS +- Moved board_settings.h in the config directory to allow out of git tree + projects to tweak those files without editing files in the Miosix git repo. +- Added miosix/_tools/init_project_out_of_git_tree.pl script to help set up + out of git tree projects. +- New makefile now supporting out of git tree projects, to help having the + Miosix git repo as a submodule of another git repo. - Updated backend_benchmark.cpp to use DevFs instead of the old Disk interface. - Fixed a bug in the stm32 SDIO drivers that caused the slowest clock speed selection, resulting in a serious performance regression when writing to diff --git a/miosix/_examples/sad_trombone/Makefile b/miosix/_examples/sad_trombone/Makefile index 8052dd9def8755f1d399930978c08cfb1458e7d7..3e4544e026e1ae4f1427ba5e30c1c58f847d21bd 100644 --- a/miosix/_examples/sad_trombone/Makefile +++ b/miosix/_examples/sad_trombone/Makefile @@ -1,14 +1,17 @@ ## -## Makefile for Miosix np embedded OS -## TFT:Terraneo Federico Technlogies +## Makefile for Miosix embedded OS ## -MAKEFILE_VERSION := 1.02 -include miosix/config/Makefile.inc +MAKEFILE_VERSION := 1.03 +## Path to kernel directory +KPATH := miosix +## Path to config directory +CONFPATH := $(realpath $(KPATH)) +include $(CONFPATH)/config/Makefile.inc ## ## List here subdirectories which contains makefiles ## -SUBDIRS := miosix +SUBDIRS := $(KPATH) ## ## List here your source files (both .s, .c and .cpp) @@ -34,16 +37,19 @@ INCLUDE_DIRS := OBJ := $(addsuffix .o, $(basename $(SRC))) ## Includes the miosix base directory for C/C++ -CXXFLAGS := $(CXXFLAGS_BASE) -I. -Imiosix -Imiosix/arch/common \ - -Imiosix/$(ARCH_INC) -Imiosix/$(BOARD_INC) $(INCLUDE_DIRS) -CFLAGS := $(CFLAGS_BASE) -I. -Imiosix -Imiosix/arch/common \ - -Imiosix/$(ARCH_INC) -Imiosix/$(BOARD_INC) $(INCLUDE_DIRS) -AFLAGS := $(AFLAGS_BASE) -LFLAGS := $(LFLAGS_BASE) -DFLAGS := -MMD -MP - -LINK_LIBS := $(LIBS) -L./miosix -Wl,--start-group -lmiosix -lstdc++ -lc -lm \ - -lgcc -Wl,--end-group +## Always include CONFPATH first, as it overrides the config file location +CXXFLAGS := $(CXXFLAGS_BASE) -I$(CONFPATH) -I$(CONFPATH)/config/$(BOARD_INC) \ + -I. -I$(KPATH) -I$(KPATH)/arch/common -I$(KPATH)/$(ARCH_INC) \ + -I$(KPATH)/$(BOARD_INC) $(INCLUDE_DIRS) +CFLAGS := $(CFLAGS_BASE) -I$(CONFPATH) -I$(CONFPATH)/config/$(BOARD_INC) \ + -I. -I$(KPATH) -I$(KPATH)/arch/common -I$(KPATH)/$(ARCH_INC) \ + -I$(KPATH)/$(BOARD_INC) $(INCLUDE_DIRS) +AFLAGS := $(AFLAGS_BASE) +LFLAGS := $(LFLAGS_BASE) +DFLAGS := -MMD -MP + +LINK_LIBS := $(LIBS) -L$(KPATH) -Wl,--start-group -lmiosix -lstdc++ -lc \ + -lm -lgcc -Wl,--end-group all: all-recursive main @@ -53,10 +59,10 @@ program: $(PROGRAM_CMDLINE) all-recursive: - $(foreach i,$(SUBDIRS),$(MAKE) -C $(i) FOLDER="$(FOLDER) $(i)/" || exit 1;) + $(foreach i,$(SUBDIRS),$(MAKE) -C $(i) CONFPATH="$(CONFPATH)" || exit 1;) clean-recursive: - $(foreach i,$(SUBDIRS),$(MAKE) -C $(i) FOLDER="$(FOLDER) $(i)/" clean || exit 1;) + $(foreach i,$(SUBDIRS),$(MAKE) -C $(i) CONFPATH="$(CONFPATH)" clean || exit 1;) clean-topdir: -rm -f $(OBJ) main.elf main.hex main.bin main.map $(OBJ:.o=.d) @@ -68,7 +74,7 @@ main: main.elf main.elf: $(OBJ) all-recursive @ echo "linking" - $(CXX) $(LFLAGS) -o main.elf $(OBJ) miosix/$(BOOT_FILE) $(LINK_LIBS) + $(CXX) $(LFLAGS) -o main.elf $(OBJ) $(KPATH)/$(BOOT_FILE) $(LINK_LIBS) %.o: %.s $(AS) $(AFLAGS) $< -o $@ diff --git a/miosix/_tools/init_project_out_of_git_tree.pl b/miosix/_tools/init_project_out_of_git_tree.pl new file mode 100644 index 0000000000000000000000000000000000000000..c80024fa8af6970d7a9afeaa1fe40d1dc9f013e7 --- /dev/null +++ b/miosix/_tools/init_project_out_of_git_tree.pl @@ -0,0 +1,67 @@ +#!/usr/bin/perl + +# This script allows to replicate the content of the Miosix top level directory +# outside of the Miosix git repository, in order to write an application making +# use of Miosix without creating or altering any file in the Miosix git repo. +# This simplifies updating the kernel with git pull and allows to have the +# Miosix git repository as a submodule of another git repository. +# +# To use this script, open a shell in the directory where you want the +# project to be created and run +# perl <path to the kernel>/miosix/_tools/init_project_out_of_source_tree.pl + +use warnings; +use strict; +use Cwd qw(cwd abs_path); +use File::Copy; +use File::Copy::Recursive qw(dircopy); +use File::Basename; +use File::Spec; + +# Target directory is where the script is launched from +my $target=cwd(); + +# Get the kernel top level directory from the script path. The script must be +# placed in the miosix/_tools subdirectory of the Miosix git repo +my $source=dirname(abs_path($0)); +die "Can't locate the kernel directory\n" unless($source =~ /(\\|\/)miosix(\\|\/)_tools$/); +$source =~ s/(\\|\/)miosix(\\|\/)_tools$//; +die "The project directory must be outside of the kernel tree\n" if(index($target,$source)==0); + +die "Error: file main.cpp already exists\n" if -e "main.cpp"; +die "Error: file Makefile already exists\n" if -e "Makefile"; +die "Error: directory config already exists\n" if -e "config"; +die "Error: directory miosix_np_2 already exists\n" if -e "miosix_np_2"; + +# Copy the Makefile fixing the KPATH and CONFPATH lines. This is what makes +# building out the git tree possible +sub copy_and_fixup_makefile +{ + my ($in_name,$out_name)=@_; + open(my $in, '<', $in_name) or die; + open(my $out, '>', $out_name) or die; + # KPATH must contain the path to the kernel. Said path must be relative and + # in the unix format (i.e: with / as path separator, not \). This is + # because the generated Makefile may be put in a public git repository that + # has the miosix kernel as a submodule, and it would be bad to put an + # absolute path in a git repo, or a path that is only usable from windows + my $relpath=File::Spec->abs2rel($source,$target); + $relpath =~ s/\\/\//; # Force the use of / as path separator + while(<$in>) + { + s/^KPATH := miosix$/KPATH := $relpath\/miosix/; + s/^CONFPATH := \$\(realpath \$\(KPATH\)\)$/CONFPATH := \$\(realpath \.\)/; + print $out "$_"; + } + close($in); + close($out); +} + +copy("$source/main.cpp","$target/main.cpp") or die; +copy_and_fixup_makefile("$source/Makefile","$target/Makefile"); +dircopy("$source/miosix/config","$target/config") or die; +dircopy("$source/miosix_np_2","$target/miosix_np_2") or die; + +print "Successfully created Miosix project\n"; +print "Target directory: $target\n"; +print "Kernel directory: $source\n"; diff --git a/miosix/config/Makefile.inc b/miosix/config/Makefile.inc index f30993e35b4c7dc1c4c676520cff441b6cc706de..dab3ec41ae91bed4c8ad8040f7bea786d858c6fd 100644 --- a/miosix/config/Makefile.inc +++ b/miosix/config/Makefile.inc @@ -1,6 +1,5 @@ ## -## Makefile for Miosix np embedded OS -## TFT:Terraneo Federico Technlogies +## Makefile for Miosix embedded OS ## ## This file contains the options required by the build system to build ## Miosix on various target architectures. All options start with OPT_ @@ -266,7 +265,7 @@ endif ## a new board or porting Miosix to a new architecture ## ############################################################################ -ifneq ($(MAKEFILE_VERSION),1.02) +ifneq ($(MAKEFILE_VERSION),1.03) $(info You are using an incompatible makefile. Make sure it matches \ the one distributed with the current version of the kernel) $(error Error) @@ -382,7 +381,7 @@ ifeq ($(ARCH),arm7_lpc2000) CXXFLAGS_BASE += -D_ARCH_ARM7_LPC2000 -mcpu=arm7tdmi $(OPT_OPTIMIZATION) \ -ffunction-sections $(OPT_EXCEPT) -Wall -g -c LFLAGS_BASE := -mcpu=arm7tdmi -Wl,--gc-sections,-Map,main.map \ - -Wl,-T./miosix/$(LINKER_SCRIPT) $(OPT_EXCEPT) \ + -Wl,-T$(KPATH)/$(LINKER_SCRIPT) $(OPT_EXCEPT) \ $(OPT_OPTIMIZATION) -nostdlib ## Select architecture specific files @@ -434,7 +433,7 @@ else ifeq ($(ARCH),cortexM3_stm32) ## error message saying that 'make program' is not supported for that ## board. ifeq ($(LINKER_SCRIPT),$(LINKER_SCRIPT_PATH)stm32_512k+64k_all_in_xram.ld) - PROGRAM_CMDLINE := miosix/_tools/bootloaders/stm32/pc_loader/pc_loader \ + PROGRAM_CMDLINE := $(KPATH)/_tools/bootloaders/stm32/pc_loader/pc_loader \ /dev/ttyUSB0 main.bin else PROGRAM_CMDLINE := stm32flash -w main.hex -v /dev/ttyUSB0 @@ -611,7 +610,7 @@ else ifeq ($(ARCH),cortexM3_stm32) $(OPT_EXCEPT) -mcpu=cortex-m3 -mthumb \ $(OPT_OPTIMIZATION) -ffunction-sections -Wall -g -c LFLAGS_BASE := -mcpu=cortex-m3 -mthumb -Wl,--gc-sections,-Map,main.map \ - -Wl,-T./miosix/$(LINKER_SCRIPT) $(OPT_EXCEPT) \ + -Wl,-T$(KPATH)/$(LINKER_SCRIPT) $(OPT_EXCEPT) \ $(OPT_OPTIMIZATION) -nostdlib ## Select architecture specific files @@ -754,7 +753,7 @@ else ifeq ($(ARCH),cortexM4_stm32f4) -Wall -g -c LFLAGS_BASE := -mcpu=cortex-m4 -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 \ -Wl,--gc-sections,-Map,main.map \ - -Wl,-T./miosix/$(LINKER_SCRIPT) $(OPT_EXCEPT) \ + -Wl,-T$(KPATH)/$(LINKER_SCRIPT) $(OPT_EXCEPT) \ $(OPT_OPTIMIZATION) -nostdlib ## Select architecture specific files @@ -810,7 +809,7 @@ else ifeq ($(ARCH),cortexM3_stm32f2) ## error message saying that 'make program' is not supported for that ## board. ifeq ($(LINKER_SCRIPT),$(LINKER_SCRIPT_PATH)stm32_1m+128k_all_in_xram.ld) - PROGRAM_CMDLINE := miosix/_tools/bootloaders/stm32/pc_loader/pc_loader \ + PROGRAM_CMDLINE := $(KPATH)/_tools/bootloaders/stm32/pc_loader/pc_loader \ /dev/ttyUSB0 main.bin else PROGRAM_CMDLINE := qstlink2 -cqewV ./main.bin @@ -852,7 +851,7 @@ else ifeq ($(ARCH),cortexM3_stm32f2) ## error message saying that 'make program' is not supported for that ## board. ifeq ($(LINKER_SCRIPT),$(LINKER_SCRIPT_PATH)stm32_1m+128k_code_in_xram.ld) - PROGRAM_CMDLINE := miosix/_tools/bootloaders/stm32/pc_loader/pc_loader \ + PROGRAM_CMDLINE := $(KPATH)/_tools/bootloaders/stm32/pc_loader/pc_loader \ /dev/ttyUSB1 main.bin else PROGRAM_CMDLINE := stm32flash -w main.hex -v /dev/ttyUSB1 @@ -959,7 +958,7 @@ else ifeq ($(ARCH),cortexM3_stm32f2) $(OPT_EXCEPT) -mcpu=cortex-m3 -mthumb \ $(OPT_OPTIMIZATION) -ffunction-sections -Wall -g -c LFLAGS_BASE := -mcpu=cortex-m3 -mthumb -Wl,--gc-sections,-Map,main.map \ - -Wl,-T./miosix/$(LINKER_SCRIPT) $(OPT_EXCEPT) \ + -Wl,-T$(KPATH)/$(LINKER_SCRIPT) $(OPT_EXCEPT) \ $(OPT_OPTIMIZATION) -nostdlib ## Select architecture specific files @@ -1039,7 +1038,7 @@ else ifeq ($(ARCH),cortexM3_stm32l1) $(OPT_EXCEPT) -mcpu=cortex-m3 -mthumb \ $(OPT_OPTIMIZATION) -ffunction-sections -Wall -g -c LFLAGS_BASE := -mcpu=cortex-m3 -mthumb -Wl,--gc-sections,-Map,main.map \ - -Wl,-T./miosix/$(LINKER_SCRIPT) $(OPT_EXCEPT) \ + -Wl,-T$(KPATH)/$(LINKER_SCRIPT) $(OPT_EXCEPT) \ $(OPT_OPTIMIZATION) -nostdlib ## Select architecture specific files diff --git a/miosix/arch/arm7_lpc2000/lpc2138_miosix_board/board_settings.h b/miosix/config/arch/arm7_lpc2000/lpc2138_miosix_board/board_settings.h similarity index 100% rename from miosix/arch/arm7_lpc2000/lpc2138_miosix_board/board_settings.h rename to miosix/config/arch/arm7_lpc2000/lpc2138_miosix_board/board_settings.h diff --git a/miosix/arch/cortexM3_stm32/stm32f100rb_stm32vldiscovery/board_settings.h b/miosix/config/arch/cortexM3_stm32/stm32f100rb_stm32vldiscovery/board_settings.h similarity index 100% rename from miosix/arch/cortexM3_stm32/stm32f100rb_stm32vldiscovery/board_settings.h rename to miosix/config/arch/cortexM3_stm32/stm32f100rb_stm32vldiscovery/board_settings.h diff --git a/miosix/arch/cortexM3_stm32/stm32f103ve_mp3v2/board_settings.h b/miosix/config/arch/cortexM3_stm32/stm32f103ve_mp3v2/board_settings.h similarity index 100% rename from miosix/arch/cortexM3_stm32/stm32f103ve_mp3v2/board_settings.h rename to miosix/config/arch/cortexM3_stm32/stm32f103ve_mp3v2/board_settings.h diff --git a/miosix/arch/cortexM3_stm32/stm32f103ve_strive_mini/board_settings.h b/miosix/config/arch/cortexM3_stm32/stm32f103ve_strive_mini/board_settings.h similarity index 100% rename from miosix/arch/cortexM3_stm32/stm32f103ve_strive_mini/board_settings.h rename to miosix/config/arch/cortexM3_stm32/stm32f103ve_strive_mini/board_settings.h diff --git a/miosix/arch/cortexM3_stm32/stm32f103ze_redbull_v2/board_settings.h b/miosix/config/arch/cortexM3_stm32/stm32f103ze_redbull_v2/board_settings.h similarity index 100% rename from miosix/arch/cortexM3_stm32/stm32f103ze_redbull_v2/board_settings.h rename to miosix/config/arch/cortexM3_stm32/stm32f103ze_redbull_v2/board_settings.h diff --git a/miosix/arch/cortexM3_stm32/stm32f103ze_stm3210e-eval/board_settings.h b/miosix/config/arch/cortexM3_stm32/stm32f103ze_stm3210e-eval/board_settings.h similarity index 100% rename from miosix/arch/cortexM3_stm32/stm32f103ze_stm3210e-eval/board_settings.h rename to miosix/config/arch/cortexM3_stm32/stm32f103ze_stm3210e-eval/board_settings.h diff --git a/miosix/arch/cortexM3_stm32f2/stm32f205rg_sony-newman/board_settings.h b/miosix/config/arch/cortexM3_stm32f2/stm32f205rg_sony-newman/board_settings.h similarity index 100% rename from miosix/arch/cortexM3_stm32f2/stm32f205rg_sony-newman/board_settings.h rename to miosix/config/arch/cortexM3_stm32f2/stm32f205rg_sony-newman/board_settings.h diff --git a/miosix/arch/cortexM3_stm32f2/stm32f207ig_stm3220g-eval/board_settings.h b/miosix/config/arch/cortexM3_stm32f2/stm32f207ig_stm3220g-eval/board_settings.h similarity index 100% rename from miosix/arch/cortexM3_stm32f2/stm32f207ig_stm3220g-eval/board_settings.h rename to miosix/config/arch/cortexM3_stm32f2/stm32f207ig_stm3220g-eval/board_settings.h diff --git a/miosix/arch/cortexM3_stm32f2/stm32f207ze_als_camboard/board_settings.h b/miosix/config/arch/cortexM3_stm32f2/stm32f207ze_als_camboard/board_settings.h similarity index 100% rename from miosix/arch/cortexM3_stm32f2/stm32f207ze_als_camboard/board_settings.h rename to miosix/config/arch/cortexM3_stm32f2/stm32f207ze_als_camboard/board_settings.h diff --git a/miosix/arch/cortexM3_stm32f2/stm32f207zg_EthBoardV2/board_settings.h b/miosix/config/arch/cortexM3_stm32f2/stm32f207zg_EthBoardV2/board_settings.h similarity index 100% rename from miosix/arch/cortexM3_stm32f2/stm32f207zg_EthBoardV2/board_settings.h rename to miosix/config/arch/cortexM3_stm32f2/stm32f207zg_EthBoardV2/board_settings.h diff --git a/miosix/arch/cortexM3_stm32l1/stm32l151c8_als_mainboard/board_settings.h b/miosix/config/arch/cortexM3_stm32l1/stm32l151c8_als_mainboard/board_settings.h similarity index 100% rename from miosix/arch/cortexM3_stm32l1/stm32l151c8_als_mainboard/board_settings.h rename to miosix/config/arch/cortexM3_stm32l1/stm32l151c8_als_mainboard/board_settings.h diff --git a/miosix/arch/cortexM4_stm32f4/stm32f407vg_bitsboard/board_settings.h b/miosix/config/arch/cortexM4_stm32f4/stm32f407vg_bitsboard/board_settings.h similarity index 100% rename from miosix/arch/cortexM4_stm32f4/stm32f407vg_bitsboard/board_settings.h rename to miosix/config/arch/cortexM4_stm32f4/stm32f407vg_bitsboard/board_settings.h diff --git a/miosix/arch/cortexM4_stm32f4/stm32f407vg_stm32f4discovery/board_settings.h b/miosix/config/arch/cortexM4_stm32f4/stm32f407vg_stm32f4discovery/board_settings.h similarity index 100% rename from miosix/arch/cortexM4_stm32f4/stm32f407vg_stm32f4discovery/board_settings.h rename to miosix/config/arch/cortexM4_stm32f4/stm32f407vg_stm32f4discovery/board_settings.h diff --git a/miosix/arch/cortexM4_stm32f4/stm32f429zi_stm32f4discovery/board_settings.h b/miosix/config/arch/cortexM4_stm32f4/stm32f429zi_stm32f4discovery/board_settings.h similarity index 100% rename from miosix/arch/cortexM4_stm32f4/stm32f429zi_stm32f4discovery/board_settings.h rename to miosix/config/arch/cortexM4_stm32f4/stm32f429zi_stm32f4discovery/board_settings.h diff --git a/miosix/config/miosix_settings.h b/miosix/config/miosix_settings.h index a2deb70206efa3ab6e328c83449f9cb99585916a..3ea473331d528c4499fcc3468438488a88ef4ed9 100644 --- a/miosix/config/miosix_settings.h +++ b/miosix/config/miosix_settings.h @@ -28,6 +28,10 @@ #ifndef MIOSIX_SETTINGS_H #define MIOSIX_SETTINGS_H +// Before you can compile the kernel you have to configure it by editing this +// file. After that, comment out this line to disable the reminder error. +#error This error is a reminder that you have not edited miosix_settings.h yet. + /** * \file miosix_settings.h * NOTE: this file contains ONLY configuration options that are not dependent