diff --git a/.gitignore b/.gitignore index c5f67fb..d24cdf3 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ out/ *.o obj/ *.img +*.unc-*~ \ No newline at end of file diff --git a/uncrustify.cfg b/uncrustify.cfg new file mode 100644 index 0000000..20dbd9f --- /dev/null +++ b/uncrustify.cfg @@ -0,0 +1,85 @@ +# +# uncrustify config file for the EMBARK kernel +# + +indent_with_tabs = 0 # 1=indent to level only, 2=indent with tabs +input_tab_size = 4 # original tab size +output_tab_size = 4 # new tab size +indent_columns = output_tab_size + +indent_label = 1 # pos: absolute col, neg: relative column +nl_end_of_file = force +nl_end_of_file_min = 1 +nl_start_of_file = remove + +# +# inter-symbol newlines +# + +nl_enum_brace = remove # "enum {" vs "enum \n {" +nl_union_brace = remove # "union {" vs "union \n {" +nl_struct_brace = remove # "struct {" vs "struct \n {" +nl_do_brace = remove # "do {" vs "do \n {" +nl_if_brace = remove # "if () {" vs "if () \n {" +nl_for_brace = remove # "for () {" vs "for () \n {" +nl_else_brace = remove # "else {" vs "else \n {" +nl_while_brace = remove # "while () {" vs "while () \n {" +nl_switch_brace = remove # "switch () {" vs "switch () \n {" +nl_brace_while = remove # "} while" vs "} \n while" - cuddle while +nl_brace_else = remove # "} else" vs "} \n else" - cuddle else +nl_func_var_def_blk = 1 +nl_fcall_brace = remove # "list_for_each() {" vs "list_for_each()\n{" +nl_fdef_brace = add # "int foo() {" vs "int foo()\n{" +# nl_after_return = TRUE; +# nl_before_case = 1 + + +# +# Source code modifications +# + +mod_paren_on_return = remove # "return 1;" vs "return (1);" +#mod_full_brace_if = remove # "if (a) a--;" vs "if (a) { a--; }" +#mod_full_brace_for = remove # "for () a--;" vs "for () { a--; }" +#mod_full_brace_do = remove # "do a--; while ();" vs "do { a--; } while ();" +#mod_full_brace_while = remove # "while (a) a--;" vs "while (a) { a--; }" +mod_full_brace_nl = 3 # don't remove if more than 3 newlines + + +# +# inter-character spacing options +# + +sp_return_paren = remove # "return (1);" vs "return(1);" +sp_sizeof_paren = remove # "sizeof (int)" vs "sizeof(int)" +sp_before_sparen = force # "if (" vs "if(" +sp_after_sparen = force # "if () {" vs "if (){" +sp_after_cast = force # "(int) a" vs "(int)a" +sp_inside_braces = add # "{ 1 }" vs "{1}" +sp_inside_braces_struct = add # "{ 1 }" vs "{1}" +sp_inside_braces_enum = add # "{ 1 }" vs "{1}" +sp_assign = add +sp_arith = add +sp_bool = add +sp_compare = add +sp_after_comma = add +sp_func_def_paren = remove # "int foo (){" vs "int foo(){" +sp_func_call_paren = remove # "foo (" vs "foo(" +sp_func_proto_paren = remove # "int foo ();" vs "int foo();" + +# +# Inline assembly stuff +# + +indent_ignore_asm_block = true +align_asm_colon = false + +# +# Aligning stuff +# + +align_with_tabs = false # use tabs to align +align_on_tabstop = true # align on tabstops +align_enum_equ_span = 4 # '=' in enum definition +align_struct_init_span = 3 # align stuff in a structure init '= { }' +align_right_cmt_span = 3