Commit Graph
100 Commits
Author SHA1 Message Date
BVK Chaitanya 486411dd54 pull-in func-params branch 2010-05-21 16:15:09 +05:30
BVK Chaitanya 1702fbc15d replace error handling with goto 2010-05-21 15:43:24 +05:30
BVK Chaitanya f532a574a6 write overflow bug fix with cleanup 2010-05-21 15:34:36 +05:30
BVK Chaitanya 5ef88f6e95 merge with mainline 2010-05-20 13:56:14 +05:30
BVK Chaitanya 50cd44693d minor fixes 2010-05-19 20:53:20 +05:30
BVK Chaitanya 868bebea0c merge with mainline 2010-05-19 14:39:58 +05:30
BVK Chaitanya 123b7a8571 Fix grub-mkrescue usage unit testing.
* tests/util/grub-shell.in: Use --grub-mkimage with grub-mkrescue.
2010-05-19 14:31:43 +05:30
BVK Chaitanya 0003008a58 memory leak fix in grub_script_execute_cmdline 2010-05-19 10:25:41 +05:30
BVK Chaitanya dada803720 allocate memory in sizes of two powers 2010-05-19 10:15:48 +05:30
BVK Chaitanya a0b20aad47 some shell expansion features into grub-script 2010-05-18 21:03:35 +05:30
BVK Chaitanya f4fc97d02a source tree reorg for emu platform 2010-05-17 21:10:53 +05:30
BVK Chaitanya d2d32327a8 merge with mainline 2010-05-17 20:36:05 +05:30
BVK Chaitanya c77d412448 pulled-in func-params branch 2010-05-17 10:53:35 +05:30
BVK Chaitanya 04888e8787 few more testcases added 2010-05-12 13:53:50 +05:30
BVK Chaitanya 53018ca6c3 minor fix 2010-05-12 13:12:49 +05:30
BVK Chaitanya d13f69de73 handle failure case 2010-05-12 10:45:22 +05:30
BVK Chaitanya 263b0fa757 merge with mainline 2010-05-12 10:41:24 +05:30
BVK Chaitanya a0167e8bdf rewrote arglist to argv conversion and added $@, $* support 2010-05-12 10:19:12 +05:30
BVK Chaitanya 01b0317f7b simplified nesting dynamic scopes 2010-05-11 10:52:10 +05:30
BVK Chaitanya 4a2ec49233 merge with mainline 2010-05-07 11:24:17 +05:30
BVK Chaitanya f1c891902d merge with mainline 2010-05-06 21:22:08 +05:30
BVK Chaitanya 60b4a7c45b sparc build fix 2010-05-06 10:16:55 +05:30
BVK Chaitanya ab4da2cd36 build fixes for real platforms 2010-05-06 09:33:45 +05:30
BVK Chaitanya da6e6f17f3 cygwin emu build fixes 2010-05-06 08:45:39 +05:30
BVK Chaitanya 342bf06e58 function parameters support 2010-05-05 14:47:50 +05:30
BVK Chaitanya 020cf9607c simplify cmdblock with cmdlist 2010-05-05 14:06:19 +05:30
BVK Chaitanya a8a145eb2f simplify cmdblock with cmdlist 2010-05-05 14:05:06 +05:30
BVK Chaitanya 81827e248c merge with mainline 2010-05-04 09:09:03 +05:30
BVK Chaitanya a8ebb84111 Fix comment handling.
* tests/grub_script_comments.in: New testcase.
	* conf/tests.rmk: Rules for new testcase.
	* script/yylex.l: Updated flex rules.
2010-05-01 15:49:43 +05:30
BVK Chaitanya c548018b7c added few more test cases 2010-05-01 15:39:59 +05:30
BVK Chaitanya 6fdda85ae6 fix comment and brace handling 2010-04-30 13:50:41 +05:30
BVK Chaitanya b84cac2a36 undo some hunks that were removed by mistake 2010-04-27 20:59:45 +05:30
BVK Chaitanya f07ccea799 removed some duplicate code 2010-04-27 20:55:12 +05:30
BVK Chaitanya 4c7085f82b added support for --enable-grub-emu-modules build 2010-04-27 13:57:14 +05:30
BVK Chaitanya 840b61d8f0 reorganized grub-emu sources to suite upcoming automake build system 2010-04-27 10:50:28 +05:30
BVK Chaitanya bc4a2d832b Fix emu build with grub-emu-pci and grub-emu-modules.
* include/grub/util/misc.h: Export grub_util_{info,error,warn}
	functions.
	* include/grub/libpciaccess.h: New file.
	* conf/any-emu.rmk: Update kernel headers for emu build.
2010-04-19 16:04:56 +05:30
BVK Chaitanya 454c3001f2 fix emu build with grub-emu-pci and grub-emu-modules 2010-04-19 15:15:59 +05:30
BVK Chaitanya 08f46d6221 Fix a spurious, uninitialized variable warning.
* loader/i386/bsdXX.c (grub_freebsd_load_elfmodule_obj):
	Initialize variable, shdr.
	(grub_freebsd_load_elfmodule): Likewise.
	(grub_freebsd_load_elf_meta): Likewise.
2010-04-14 13:48:49 +05:30
BVK Chaitanya 851395d865 fix uninitialized warning 2010-04-14 13:38:05 +05:30
BVK Chaitanya 8c4a72d4b5 Fix for escaped dollar in double quoted strings.
* script/yylex.l: Updated flex rules.
	* conf/tests.rmk: Rule for new testcase.
	* tests/grub_script_dollar.in: New testcase.
2010-04-13 21:25:27 +05:30
BVK Chaitanya ae45b7bad4 add missing testcase 2010-04-13 21:01:56 +05:30
BVK Chaitanya 4e6da157dd fix and testcase for \$ in grub script dquote strings 2010-04-13 20:58:12 +05:30
BVK Chaitanya f516290c5a Documentation fix.
* util/grub-script-check.c: Better help message.
2010-04-10 19:28:59 +05:30
BVK Chaitanya 84a09b2134 merged with mainline 2010-04-10 19:18:24 +05:30
BVK Chaitanya d8dcc0dff8 Fix FreeBSD build.
* configure.ac: Flex version check.
	* conf/common.rmk: Add -Wno-error to sh.mod.
	* script/yylex.l: Remove all #pragma.
2010-04-10 19:11:32 +05:30
BVK Chaitanya 505a257475 merged with mainline 2010-04-10 18:38:09 +05:30
BVK Chaitanya 20072d3ad5 merged with mainline 2010-04-10 18:09:56 +05:30
BVK Chaitanya 2663fb5f04 flex version check is now done by awk alone 2010-04-10 18:06:45 +05:30
BVK Chaitanya 7d65244782 Elif support to GRUB script (by Deepak Vankadaru).
* tests/grub_script_if.in: New testcase.
	* conf/tests.rmk: Rule for new testcase.
	* script/parser.y: Grammar rules for elif.
2010-04-09 22:38:27 +05:30
BVK Chaitanya 68b31b54f5 merged with mainline 2010-04-09 22:32:58 +05:30
BVK Chaitanya 34bb22dfa5 While and until loops support to GRUB script.
* include/grub/script_sh.h (grub_script_cmdwhile): New struct.
	(grub_script_create_cmdwhile): New function prototype.
	(grub_script_execute_cmdwhile): New function prototype.
	* script/execute.c (grub_script_execute_cmdwhile): New function.
	* script/parser.y (command): New commands.
	(whilecmd): New grammar rule.
	(untilcmd): New grammar rule.
	* script/script.c (grub_script_create_cmdwhile): New function.
	* util/grub-script-check.c (grub_script_execute_cmdwhile): New
	function.

	* tests/grub_script_while1.in: New testcase.
	* conf/tests.rmk: Rule for new testcase.
2010-04-09 22:04:21 +05:30
BVK Chaitanya c41c00eab6 merged with mainline 2010-04-09 21:44:59 +05:30
BVK Chaitanya 9705115b22 merged with mainline 2010-04-09 20:53:57 +05:30
BVK Chaitanya 14e18ae351 Fix unit testing framework for Qemu 0.12.
* tests/util/grub-shell.in: Remove -serial stdio option.
2010-04-06 19:13:55 +05:30
BVK Chaitanya 4ee717e12b fix freebsd build 2010-04-06 14:39:11 +05:30
BVK Chaitanya fa09c82e6e updated changelog 2010-04-06 12:31:44 +05:30
BVK Chaitanya f9d9068aa7 removed -serial stdio option from qemu cmdline 2010-04-06 12:21:11 +05:30
BVK Chaitanya 6ee26b7469 merged with mainline 2010-04-06 10:07:55 +05:30
BVK Chaitanya daf892b3d4 POSIX header file wrappers.
* lib/posix_wrap/assert.h: New file. Wrapper for its POSIX
	equivalents.
	* lib/posix_wrap/ctype.h: Likewise.
	* lib/posix_wrap/errno.h: Likewise.
	* lib/posix_wrap/langinfo.h: Likewise.
	* lib/posix_wrap/limits.h: Likewise.
	* lib/posix_wrap/localcharset.h: Likewise.
	* lib/posix_wrap/stdint.h: Likewise.
	* lib/posix_wrap/stdio.h: Likewise.
	* lib/posix_wrap/stdlib.h: Likewise.
	* lib/posix_wrap/string.h: Likewise.
	* lib/posix_wrap/sys/types.h: Likewise.
	* lib/posix_wrap/unistd.h: Likewise.
	* lib/posix_wrap/wchar.h: Likewise.
	* lib/posix_wrap/wctype.h: Likewise.
	* conf/common.rmk (grub_script.yy.c): Remove #include elimination.
	(grub_script.yy.h): Likewise.
	* script/yylex.l: Remove POSIX emulation #defines.
	* Makefile.in (POSIX_CFLAGS): New variable.
	(GNULIB_UTIL_CFLAGS): Likewise.

	Regexp support.

	* conf/common.rmk (pkglib_MODULES): Add regexp.mod.
	(regexp_mod_SOURCES): New variable.
	(regexp_mod_CFLAGS): Likewise.
	(regexp_mod_LDFLAGS): Likewise.
	* commands/regexp.c: New file.
	* gnulib/regcomp.c: New file. Imported from gnulib.
	* gnulib/regex.c: Likewise.
	* gnulib/regex_internal.c: Likewise.
	* gnulib/regex_internal.h: Likewise.
	* gnulib/regexec.c: Likewise.
	* gnulib/regex.h: Likewise.
2010-04-06 01:17:32 +05:30
BVK Chaitanya b777c18e38 fixed version canonicalization 2010-04-05 21:47:19 +05:30
BVK Chaitanya 0922019068 added flex version check in configure.ac 2010-04-05 21:08:30 +05:30
BVK Chaitanya 8d2977bb7a fix for final semicolon bug 2010-03-26 23:57:06 +05:30
BVK Chaitanya dae0d05f2d merged with mainline 2010-03-26 23:49:49 +05:30
BVK Chaitanya a7bd6915e1 testcase for blank lines in grub script 2010-03-26 23:41:46 +05:30
BVK Chaitanya 03efaf45b2 merged with mainline 2010-03-26 23:36:14 +05:30
BVK Chaitanya baae00df35 merged with mainline 2010-03-26 21:13:06 +05:30
BVK Chaitanya 746d90457a 2010-01-12 BVK Chaitanya <bvk.groups@gmail.com>
For loop support to GRUB script.

	* include/grub/script_sh.h (grub_script_cmdfor): New struct.
	(grub_script_create_cmdfor): New function prototype.
	(grub_script_execute_cmdfor): New function prototype.
	* script/execute.c (grub_script_execute_cmdfor): New function.
	* script/parser.y (command): New for command.
	(forcmd): New grammar rule.
	* script/script.c (grub_script_create_cmdfor): New function.
	* util/grub-script-check.c (grub_script_execute_cmdfor): New
	function.
2010-03-26 21:00:15 +05:30
BVK Chaitanya c299f3d6fb merged with mainline 2010-03-26 20:55:07 +05:30
BVK Chaitanya a7447ca6e1 fix for grub_script_final_semicolon test 2010-03-22 14:03:20 +05:30
BVK Chaitanya 3e6b777ba7 testcase for the last semicolon behavior 2010-03-22 14:02:48 +05:30
BVK Chaitanya 8507a6ccdf testcase for blanklines in grub script 2010-03-22 13:54:45 +05:30
BVK Chaitanya ba4be5af25 fixed help message for grub-script-check 2010-03-22 13:25:09 +05:30
BVK Chaitanya dd6fee39fa merged mainline 2010-03-21 11:03:41 +05:30
BVK Chaitanya 0f3a3e3ece added elif patch from Deepak Vankadaru 2010-03-21 10:27:21 +05:30
BVK Chaitanya 8c85123cd5 merged for-loop branch 2010-03-21 09:59:43 +05:30
BVK Chaitanya 8a99e92a69 merge in mainline 2010-03-16 17:42:27 +05:30
BVK Chaitanya 0cdc2a095b 2010-03-14 BVK Chaitanya <bvk.groups@gmail.com>
GRUB shell lexer and parser improvements.

	* conf/any-emu.rmk: Build rule updates.
	* conf/common.rmk: Likewise.
	* conf/i386-coreboot.rmk: Likewise.
	* conf/i386-efi.rmk: Likewise.
	* conf/i386-ieee1275.rmk: Likewise.
	* conf/i386-pc.rmk: Likewise.
	* conf/powerpc-ieee1275.rmk: Likewise.
	* conf/x86_64-efi.rmk: Likewise.

	* configure.ac: Configure check for flex.

	* include/grub/script_sh.h (grub_script_arg_type_t): More argument
	types.
	(grub_lexer_param): Struct member updates.
	(grub_parser_param): Likewise.
	(GRUB_LEXER_TOKEN_MAX): Maximum token size.
	(GRUB_LEXER_RECORD_INCREMENT): Memory increments' size.
	(grub_script_lexer_init): Prototype update.
	(grub_script_lexer_record_start): Likewise.
	(grub_script_lexer_record_stop): Likewise.
	(grub_script_lexer_yywrap): New function prototype.
	(grub_script_lexer_fini): Likewise.
	(grub_script_execute_argument_to_string): Removed by...
	(grub_script_execute_argument_to_argv): ...better version.

	* script/execute.c (ROUND_UPTO): New macro.
	(grub_script_execute_cmdline): Out of memory fixes.
	(grub_script_execute_menuentry): Likewise.
	(grub_script_execute_argument_to_string): Removed. Update all
	users by...
	(grub_script_execute_argument_to_argv): ...better version.
	* script/function.c (grub_script_function_create): Use
	grub_script_execute_argument_to_argv instead of
	grub_script_execute_argument_to_string.

	* script/lexer.c (check_varstate): Removed.
	(check_textstate): Removed.
	(grub_script_lexer_record_start): Likewise.
	(grub_script_lexer_record_stop): Likewise.
	(recordchar): Replaced with...
	(grub_script_lexer_record): ...new function.
	(nextchar): Removed.
	(grub_script_lexer_init): Rewritten.
	(grub_script_yylex): Rewritten.
	(append_newline): New function.
	(grub_script_lexer_yywrap): New function.
	(grub_script_lexer_fini): New function.
	(grub_script_yyerror): Sets error flag.

	* script/yylex.l: New file.
	(grub_lexer_yyfree): Wrapper for flex yyffre.
	(grub_lexer_yyalloc): Likewise.
	(grub_lexer_yyrealloc): Likewise.
	* script/parser.y: Refactored.

	* script/script.c (grub_script_arg_add): Out of memory fixes.
	(grub_script_add_arglist): Likewise.
	(grub_script_create_cmdline): Likewise.
	(grub_script_create_cmdmenu): Likewise.
	(grub_script_add_cmd): Likewise.
	(grub_script_parse): Use grub_script_lexer_fini to deallocated.
	* util/grub-script-check.c (grub_script_execute_menuentry): Remove
	unnecessary code.

	* tests/grub_script_echo1.in: New testcase.
	* tests/grub_script_vars1.in: New testcase.
	* tests/grub_script_echo_keywords.in: New testcase.
2010-03-14 22:37:17 +05:30
BVK Chaitanya 8622549153 merged in mainline 2010-03-14 22:20:55 +05:30
BVK Chaitanya a929c8cd1e fix off-by-one error in menuentry cmd 2010-02-11 18:49:57 +05:30
BVK Chaitanya 1136ac2632 fix for grub-script-check to handle empty lines 2010-01-28 22:31:06 +05:30
BVK Chaitanya 366e15ba86 sync with trunk 2010-01-28 21:48:15 +05:30
BVK Chaitanya f45d2663b0 add changelog 2010-01-28 21:46:59 +05:30
BVK Chaitanya 275d6f6bd4 fix grub-script-check 2010-01-28 21:43:28 +05:30
BVK Chaitanya b5c5144ab1 made while/until loop condition check more readable 2010-01-26 14:33:23 +05:30
BVK Chaitanya 2aa1646307 new testcase for while and until loops 2010-01-26 12:32:47 +05:30
BVK Chaitanya 3342306cec several fixes in return value handling 2010-01-26 12:32:24 +05:30
BVK Chaitanya c1273662b9 added change log file 2010-01-26 09:39:51 +05:30
BVK Chaitanya 37effddaf3 make parenthesis as valid word characters 2010-01-25 22:01:14 +05:30
BVK Chaitanya fc9e58104a fix underquoted AC_DEFUN parameters 2010-01-23 22:38:10 +05:30
BVK Chaitanya f4c499f86f replaced magic numbers with macros 2010-01-23 19:46:28 +05:30
BVK Chaitanya 10523df478 while and until loops support 2010-01-23 11:19:26 +05:30
BVK Chaitanya 3babea95bb pulled in for-loop branch 2010-01-23 11:08:25 +05:30
BVK Chaitanya 4e6a305be4 for loop support to grub script 2010-01-23 11:03:41 +05:30
BVK Chaitanya f7867a01d3 pulled in lexer-rewrite branch 2010-01-23 10:45:38 +05:30
BVK Chaitanya 1368740e69 one more bug fix in grub_script_execute_arglist_to_argv 2010-01-23 10:28:52 +05:30
BVK Chaitanya d63cdb6e70 removed error-verbose to reduce resulting sh.mod size 2010-01-23 10:16:05 +05:30
BVK Chaitanya 1a0c3b4809 some bug fixes 2010-01-23 10:14:32 +05:30
BVK Chaitanya 836727564e replace grub_printf with grub_dprintf 2010-01-23 09:18:13 +05:30
BVK Chaitanya 1fb08ed515 return arg count from grub_script_execute_arglist_to_argv 2010-01-23 09:12:46 +05:30
BVK Chaitanya 345dd552ad replace ROUND_UPTO with ALIGN_UP 2010-01-23 08:57:26 +05:30