8281262: Windows builds in different directories are not fully reproducible
Co-authored-by: Erik Joelsson <erikj@openjdk.org> Reviewed-by: erikj, ihse
This commit is contained in:
parent
c820d1acb7
commit
d442328bc2
@ -35,8 +35,8 @@ BUILD_INFO_PROPERTIES := $(TEST_IMAGE_DIR)/build-info.properties
|
||||
$(BUILD_INFO_PROPERTIES):
|
||||
$(call MakeTargetDir)
|
||||
$(ECHO) "# Build info properties for JDK tests" > $@
|
||||
$(ECHO) "build.workspace.root=$(call FixPath, $(WORKSPACE_ROOT))" >> $@
|
||||
$(ECHO) "build.output.root=$(call FixPath, $(OUTPUTDIR))" >> $@
|
||||
$(ECHO) 'build.workspace.root=$(call FixPath, $(WORKSPACE_ROOT))' >> $@
|
||||
$(ECHO) 'build.output.root=$(call FixPath, $(OUTPUTDIR))' >> $@
|
||||
|
||||
README := $(TEST_IMAGE_DIR)/Readme.txt
|
||||
|
||||
|
@ -782,10 +782,8 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_CPU_DEP],
|
||||
test "x$ENABLE_REPRODUCIBLE_BUILD" = xtrue; then
|
||||
# There is a known issue with the pathmap if the mapping is made to the
|
||||
# empty string. Add a minimal string "s" as prefix to work around this.
|
||||
workspace_root_win=`$FIXPATH_BASE print "${WORKSPACE_ROOT%/}"`
|
||||
# PATHMAP_FLAGS is also added to LDFLAGS in flags-ldflags.m4.
|
||||
PATHMAP_FLAGS="-pathmap:${workspace_root_win//\//\\\\}=s \
|
||||
-pathmap:${workspace_root_win}=s"
|
||||
PATHMAP_FLAGS="-pathmap:${WORKSPACE_ROOT}=s"
|
||||
FILE_MACRO_CFLAGS="$PATHMAP_FLAGS"
|
||||
FLAGS_COMPILER_CHECK_ARGUMENTS(ARGUMENT: [${FILE_MACRO_CFLAGS}],
|
||||
PREFIX: $3,
|
||||
|
@ -96,6 +96,13 @@ public class AbsPathsInImage {
|
||||
if (buildOutputRoot == null) {
|
||||
throw new Error("Could not find build output root, test cannot run");
|
||||
}
|
||||
// Validate the root paths
|
||||
if (!Paths.get(buildWorkspaceRoot).isAbsolute()) {
|
||||
throw new Error("Workspace root is not an absolute path: " + buildWorkspaceRoot);
|
||||
}
|
||||
if (!Paths.get(buildOutputRoot).isAbsolute()) {
|
||||
throw new Error("Output root is not an absolute path: " + buildOutputRoot);
|
||||
}
|
||||
|
||||
List<byte[]> searchPatterns = new ArrayList<>();
|
||||
expandPatterns(searchPatterns, buildWorkspaceRoot);
|
||||
|
Loading…
Reference in New Issue
Block a user