From 2b2cb21ef755a960827f8f138d67cf3ad70ee36d Mon Sep 17 00:00:00 2001 From: Julien Signoles <julien.signoles@cea.fr> Date: Thu, 12 Apr 2012 15:26:30 +0000 Subject: [PATCH] - Code independent of the location of directory 'share' - Fixed Makefile's bug --- src/plugins/e-acsl/Makefile.in | 37 +++++++++++++++++-------- src/plugins/e-acsl/read_header.ml | 5 +--- src/plugins/e-acsl/tests/test_config.in | 2 +- 3 files changed, 27 insertions(+), 17 deletions(-) diff --git a/src/plugins/e-acsl/Makefile.in b/src/plugins/e-acsl/Makefile.in index f8866520dde..df879e37fc5 100644 --- a/src/plugins/e-acsl/Makefile.in +++ b/src/plugins/e-acsl/Makefile.in @@ -108,14 +108,7 @@ $(PLUGIN_DIR)/local_config.ml: $(PLUGIN_DIR)/Makefile.in ifeq (@MAY_RUN_TESTS@,yes) PLUGIN_TESTS_DIRS:=e-acsl-reject e-acsl-runtime -PLUGIN_NO_DEFAULT_TEST:=yes - -tests/test_config: tests/test_config.in Makefile - $(PRINT_MAKING) $@ - $(SED) -e "s|${FRAMAC_SHARE}|$(FRAMAC_SHARE)|g" \ - -e "s|@SEDCMD@|`which sed `|g" $< > $@ - -tests:: tests/test_config +tests:: $(PLUGIN_DIR)/tests/test_config endif @@ -201,16 +194,36 @@ headers:: include $(FRAMAC_SHARE)/Makefile.dynamic +#################### +# Testing (part 2) # +#################### + +ifeq (@MAY_RUN_TESTS@,yes) + +ifeq ($(FRAMAC_INTERNAL),yes) +SHARE:=-e-acsl-share ./share/e-acsl +else +SHARE:= +endif +$(E_ACSL_DIR)/tests/test_config: $(E_ACSL_DIR)/tests/test_config.in \ + $(E_ACSL_DIR)/Makefile + $(PRINT_MAKING) $@ + $(SED) -e "s|@SHARE@|$(SHARE)|g" \ + -e "s|@SEDCMD@|`which sed `|g" $< > $@ + +endif + ##################################### # Regenerating the Makefile on need # ##################################### ifeq ("$(FRAMAC_INTERNAL)","yes") -CONFIG_STATUS_DIR=$(FRAMAC_SRC) +CONFIG_STATUS_DIR:=$(FRAMAC_SRC) +CONFIG_STATUS_DIR_DEP:= else -CONFIG_STATUS_DIR=$(E_ACSL_DIR) +CONFIG_STATUS_DIR:=$(E_ACSL_DIR) +CONFIG_STATUS_DIR_DEP:=$(CONFIG_STATUS_DIR)/config.status endif -$(E_ACSL_DIR)/Makefile: $(E_ACSL_DIR)/Makefile.in \ - $(CONFIG_STATUS_DIR)/config.status +$(E_ACSL_DIR)/Makefile: $(E_ACSL_DIR)/Makefile.in $(CONFIG_STATUS_DIR_DEP) cd $(CONFIG_STATUS_DIR) && ./config.status diff --git a/src/plugins/e-acsl/read_header.ml b/src/plugins/e-acsl/read_header.ml index 426a62eb438..32fc642ddf8 100644 --- a/src/plugins/e-acsl/read_header.ml +++ b/src/plugins/e-acsl/read_header.ml @@ -22,10 +22,7 @@ let put_file_in_buffer fname buf = try - let cin = - open_in - (Filename.concat Config.datadir (Filename.concat "e-acsl" fname)) - in + let cin = open_in (Options.Share.file fname) in try while true do let l = input_line cin in diff --git a/src/plugins/e-acsl/tests/test_config.in b/src/plugins/e-acsl/tests/test_config.in index febb6081e03..b7441c31a3f 100644 --- a/src/plugins/e-acsl/tests/test_config.in +++ b/src/plugins/e-acsl/tests/test_config.in @@ -1,3 +1,3 @@ -CMD: @frama-c@ -e-acsl-share ./share/e-ascl -cpp-command="gcc -C -E -I${FRAMAC_SHARE}" +CMD: @frama-c@ @SHARE@ OPT: -e-acsl-check FILTER:@SEDCMD@ -e "s|[a-zA-Z/\\]\+frama_c_project_e-acsl_[a-z0-9]*|PROJECT_FILE|" -- GitLab