@ -9,8 +9,16 @@ TESTS_DIR = ../..
ROOT_DIR = $( TESTS_DIR) /../..
ANALYZER = infer
SOURCES = $( wildcard $( TESTS_DIR) /codetoanalyze/java/infer/*.java)
OBJECTS = $( ROOT_DIR) /buck-out/genruletest/gen/infer/tests/build_systems/genrule/module2/lib__module2_compile__output/module2_compile.jar
BUCK_TARGET = //infer/tests/build_systems/genrule/module2:module2
SOURCES = $( addprefix $( ROOT_DIR) , $( shell buck audit input $( BUCK_TARGET) ) )
TARGET_OUTPUT = $( word 2, $( shell buck targets --show-output $( BUCK_TARGET) ) )
OBJECTS = $( ROOT_DIR) /$( TARGET_OUTPUT)
INFER_TARGET = $( BUCK_TARGET) _infer
GENRULE_OUTPUT = $( word 2, $( shell GENERATE_INFER_GENRULES = 1 buck targets --show-output $( INFER_TARGET) ) )
JSON_REPORT = $( ROOT_DIR) /$( GENRULE_OUTPUT) /report.json
INFER_OPTIONS = --project-root $( ROOT_DIR)
INFERPRINT_OPTIONS = --project-root $( ROOT_DIR) --issues-tests
CLEAN_EXTRA = $( ROOT_DIR) /buck-out/genruletest
@ -21,22 +29,21 @@ include $(TESTS_DIR)/base.make
$(OBJECTS) : $( JAVA_SOURCE_FILES )
cd $( ROOT_DIR) && \
$( call silent_on_success,\
NO_BUCKD = 1 buck build --no-cache //infer/tests/codetoanalyze/java/infer:compile )
NO_BUCKD = 1 buck build --no-cache $( BUCK_TARGET) )
.PHONY : genrule
genrule : $( ROOT_DIR) /buck -out /genruletest /gen /infer /tests /build_systems /genrule /module 2/module 2_infer /infer_out /report .json
genrule : $( JSON_REPORT)
$(ROOT_DIR)/buck-out/genruletest/gen/infer/tests/build_systems/genrule/module2/module2_infer/infer_out/report.json : \
$( JAVA_DEPS) $( JAVA_SOURCE_FILES)
$(JSON_REPORT) : $( JAVA_DEPS ) $( JAVA_SOURCE_FILES )
cd $( ROOT_DIR) && \
$( REMOVE_DIR) buck-out && \
$( call silent_on_success,\
INFER_BIN = " $( INFER_BIN) " NO_BUCKD = 1 GENERATE_INFER_GENRULES = 1 \
buck build --config project.buck_out= buck-out/genruletest --no-cache //infer/tests/build_systems/genrule/module2:module2_infer )
buck build --no-cache $( INFER_TARGET) )
touch $@
infer-out/report.json : $( ROOT_DIR) /buck -out /genruletest /gen /infer /tests /build_systems /genrule /module 2/module 2_infer /infer_out /report .json
infer-out/report.json : $( JSON_REPORT)
$( MKDIR_P) infer-out
# the report contains absolute paths
@sed -e 's#$(abspath $(TESTS_DIR))/##g' $< > $@