diff options
-rw-r--r-- | VERSION | 2 | ||||
-rw-r--r-- | testsuite/tests/tool-debugger/.ignore | 1 | ||||
-rw-r--r-- | testsuite/tests/tool-debugger/Makefile | 54 | ||||
-rw-r--r-- | testsuite/tests/tool-debugger/debuggee.ml | 2 | ||||
-rw-r--r-- | testsuite/tests/tool-debugger/debuggee.reference | 5 | ||||
-rwxr-xr-x | testsuite/tests/tool-debugger/input_script | 5 |
6 files changed, 68 insertions, 1 deletions
@@ -1,4 +1,4 @@ -4.02.0+dev2-2013-09-12 +4.02.0+dev3-2013-12-19 # The version string is the first line of this file. # It must be in the format described in stdlib/sys.mli diff --git a/testsuite/tests/tool-debugger/.ignore b/testsuite/tests/tool-debugger/.ignore new file mode 100644 index 000000000..e09cf9eb6 --- /dev/null +++ b/testsuite/tests/tool-debugger/.ignore @@ -0,0 +1 @@ +compiler-libs diff --git a/testsuite/tests/tool-debugger/Makefile b/testsuite/tests/tool-debugger/Makefile new file mode 100644 index 000000000..1f1fc3386 --- /dev/null +++ b/testsuite/tests/tool-debugger/Makefile @@ -0,0 +1,54 @@ +######################################################################### +# # +# OCaml # +# # +# Damien Doligez, EPI Gallium, INRIA Rocquencourt # +# # +# Copyright 2013 Institut National de Recherche en Informatique et # +# en Automatique. All rights reserved. This file is distributed # +# under the terms of the Q Public License version 1.0. # +# # +######################################################################### + +BASEDIR=../.. +MAIN_MODULE=debuggee +ADD_COMPFLAGS=-g -custom +LD_PATH=$(TOPDIR)/otherlibs/$(UNIXLIBVAR)unix + +.PHONY: default +default: + @$(MAKE) compile + @$(SET_LD_PATH) OCAMLLIB=. $(MAKE) run + +.PHONY: compile +compile: $(ML_FILES) $(CMO_FILES) $(MAIN_MODULE).cmo + @rm -f program.byte program.byte.exe + @$(OCAMLC) $(ADD_COMPFLAGS) $(ADD_CFLAGS) -o program.byte$(EXE) \ + $(O_FILES) $(CMA_FILES) $(CMO_FILES) $(ADD_CMO_FILES) \ + $(MAIN_MODULE).cmo + @mkdir -p compiler-libs + @cp $(TOPDIR)/toplevel/topdirs.cmi compiler-libs/ + +.PHONY: run +run: + @printf " ... testing with ocamlc" + @rm -f $(MAIN_MODULE).result + @echo 'source input_script' | \ + $(OCAMLRUN) `$(CYGPATH) $(TOPDIR)/debugger/ocamldebug$(EXE)` \ + program.byte$(EXE) >$(MAIN_MODULE).raw.result 2>&1 \ + && sed -e '/Debugger version/d' -e '/^Time:/d' -e '$$d' \ + $(MAIN_MODULE).raw.result >$(MAIN_MODULE).result \ + && $(DIFF) $(MAIN_MODULE).reference $(MAIN_MODULE).result >/dev/null \ + && echo " => passed" || echo " => failed" + +.PHONY: promote +promote: defaultpromote + +.PHONY: clean +clean: defaultclean + @rm -f *.result program.byte program.byte.exe \ + program.native program.native.exe \ + $(GENERATED_SOURCES) $(O_FILES) $(TEST_TEMP_FILES) + @rm -rf compiler-libs + +include $(BASEDIR)/makefiles/Makefile.common diff --git a/testsuite/tests/tool-debugger/debuggee.ml b/testsuite/tests/tool-debugger/debuggee.ml new file mode 100644 index 000000000..341d0b369 --- /dev/null +++ b/testsuite/tests/tool-debugger/debuggee.ml @@ -0,0 +1,2 @@ +print_endline Sys.argv.(1);; +print_endline (Sys.getenv "foo");; diff --git a/testsuite/tests/tool-debugger/debuggee.reference b/testsuite/tests/tool-debugger/debuggee.reference new file mode 100644 index 000000000..e998926c3 --- /dev/null +++ b/testsuite/tests/tool-debugger/debuggee.reference @@ -0,0 +1,5 @@ + +(ocd) Loading program... done. +arg1 +notbar +Program exit. diff --git a/testsuite/tests/tool-debugger/input_script b/testsuite/tests/tool-debugger/input_script new file mode 100755 index 000000000..2caf06dd4 --- /dev/null +++ b/testsuite/tests/tool-debugger/input_script @@ -0,0 +1,5 @@ +set arguments arg1 arg2 +environment foo=bar +environment foo=notbar +run +quit |