-
Bug
-
Resolution: Fixed
-
P3
-
6
-
b50
-
generic
-
generic
In make/common/Defs.gmk, instead of the crufty:
ifndef USING_CYGWIN
JDK_IMAGE_DIR := $(shell $(CD) $(OUTPUTDIR); $(PWD))/j2sdk-image
JDK_DEBUG_IMAGE_DIR := $(shell $(CD) $(OUTPUTDIR); $(PWD))/j2sdk-debug-image
JRE_IMAGE_DIR := $(shell $(CD) $(OUTPUTDIR); $(PWD))/j2re-image
else
dummy := $(shell $(CD) $(OUTPUTDIR); $(PWD))
JDK_IMAGE_DIR := $(subst \,/,$(shell $(CYGPATH) -u $(dummy)/j2sdk-image))
JDK_DEBUG_IMAGE_DIR := $(subst \,/,$(shell $(CYGPATH) -u $(dummy)/j2sdk-debug-image))
JRE_IMAGE_DIR := $(subst \,/,$(shell $(CYGPATH) -u $(dummy)/j2re-image))
endif
simply the following is sufficient:
JDK_IMAGE_DIR := $(ABS_OUTPUTDIR)/j2sdk-image
JDK_DEBUG_IMAGE_DIR := $(ABS_OUTPUTDIR)/j2sdk-debug-image
JRE_IMAGE_DIR := $(ABS_OUTPUTDIR)/jre-image
In make/sun/io/Makefile, instead of the crufty
ifndef USING_CYGWIN
ABS_TMPDIR := $(shell $(CD) $(TMPDIR); $(PWD))
ABS_BINDIR := $(shell $(CD) $(BINDIR); $(PWD))
ABS_BUILDDIR := $(shell $(CD) $(BUILDDIR); $(PWD))
ABS_CHARSETS_JAR := $(shell $(CD) $(LIBDIR); $(PWD))/charsets.jar
REORDER_DIR = $(ABS_TMPDIR)/reorder/file_list
else
# cygpath.exe bug? `$(CYGPATH) -w -a $(BINDIR)` returns
# d:\j2se\build\windows-i586\tmp\build\windows-i586\bin instead of
# d:\j2se\build\windows-i586\bin
# so we get the absolute path this way:
ABS_BINDIR := $(subst \,/,$(shell $(CYGPATH) -w $(shell $(CD) $(BINDIR); $(PWD))))
ABS_TMPDIR := $(subst \,/,$(shell $(CYGPATH) -w $(shell $(CD) $(TMPDIR); $(PWD))))
ABS_BUILDDIR := $(subst \,/,$(shell $(CYGPATH) -w $(shell $(CD) $(BUILDDIR); $(PWD))))
# windows versions of the following paths are needed because without this
# processing they get converted by the cygwin shell to a path that the
# jar command does not understand.
ABS_CHARSETS_JAR := $(subst \,/,$(shell $(CYGPATH) -u $(shell $(CD) $(LIBDIR); $(PWD)))/charsets.jar
REORDER_DIR := $(subst \,/,$(shell $(CYGPATH) -u $(shell $(CD) $(TMPDIR); $(PWD)))/reorder/file_list
endif
simply the following should be sufficient:
ABS_CHARSETS_JAR := $(ABS_LIBDIR)/charsets.jar
REORDER_DIR := $(ABS_TMPDIR)/reorder/file_list
This makefile has no business defining variables like ABS_LIBDIR;
if those are needed, they should be defined in a higher-level
Makefile. Indeed, ABS_LIBDIR is already defined in common/Release.gmk.
I don't believe the comment about #cygpath.exe bug.
We are already dependent on the construct $(shell $(CYGPATH) -u -a ...)
working correctly elsewhere.
Similarly, the following code in make/common/Release.gmk is in need of cleanup:
# absolute directory names: note, these must exist prior to build
# time - they are created in the main Makefile.
ifndef USING_CYGWIN
ABS_BUILDDIR := $(shell $(CD) $(BUILDDIR); $(PWD))
ifdef USE_ONLY_BOOTDIR_TOOLS
ABS_BINDIR := $(shell $(CD) $(BOOTDIR); $(PWD))/bin
else
ABS_BINDIR := $(shell $(CD) $(BINDIR); $(PWD))
endif
ABS_LIBDIR := $(shell $(CD) $(LIBDIR); $(PWD))
ABS_TMPDIR := $(shell $(CD) $(TMPDIR); $(PWD))
ABS_HTMLCONVERTER := $(shell $(CD) $(BINDIR); $(PWD))/HtmlConverter$(EXE_SUFFIX)
JRE_IMAGE_BINDIR = $(JRE_IMAGE_DIR)/bin
JRE_IMAGE_THREADIR = $(JRE_IMAGE_DIR)/bin/*/native_threads
else
ABS_BUILDDIR := $(subst \,/,$(shell $(CYGPATH) -w -a $(BUILDDIR)))
ifdef USE_ONLY_BOOTDIR_TOOLS
ABS_BINDIR := $(subst \,/,$(shell $(CYGPATH) -w -a $(BOOTDIR)/bin))
else
ABS_BINDIR := $(subst \,/,$(shell $(CYGPATH) -w -a $(BINDIR)))
endif
ABS_TMPDIR := $(subst \,/,$(shell $(CYGPATH) -w -a $(TMPDIR)))
ABS_HTMLCONVERTER := $(subst \,/,$(shell $(CYGPATH) -w -a $(BIDDIR)/HtmlConverter$(EXE_SUFFIX)))
ABS_LIBDIR := $(subst \,/,$(shell $(CYGPATH) -w -a $(LIBDIR)))
JRE_IMAGE_BINDIR := $(subst \,/,$(shell $(CYGPATH) -w -a $(JRE_IMAGE_DIR)))/bin
JRE_IMAGE_THREADIR := $(subst \,/,$(shell $(CYGPATH) -w -a $(JRE_IMAGE_DIR)))/bin/*/native_threads
endif
###@###.### 2004-01-28
ifndef USING_CYGWIN
JDK_IMAGE_DIR := $(shell $(CD) $(OUTPUTDIR); $(PWD))/j2sdk-image
JDK_DEBUG_IMAGE_DIR := $(shell $(CD) $(OUTPUTDIR); $(PWD))/j2sdk-debug-image
JRE_IMAGE_DIR := $(shell $(CD) $(OUTPUTDIR); $(PWD))/j2re-image
else
dummy := $(shell $(CD) $(OUTPUTDIR); $(PWD))
JDK_IMAGE_DIR := $(subst \,/,$(shell $(CYGPATH) -u $(dummy)/j2sdk-image))
JDK_DEBUG_IMAGE_DIR := $(subst \,/,$(shell $(CYGPATH) -u $(dummy)/j2sdk-debug-image))
JRE_IMAGE_DIR := $(subst \,/,$(shell $(CYGPATH) -u $(dummy)/j2re-image))
endif
simply the following is sufficient:
JDK_IMAGE_DIR := $(ABS_OUTPUTDIR)/j2sdk-image
JDK_DEBUG_IMAGE_DIR := $(ABS_OUTPUTDIR)/j2sdk-debug-image
JRE_IMAGE_DIR := $(ABS_OUTPUTDIR)/jre-image
In make/sun/io/Makefile, instead of the crufty
ifndef USING_CYGWIN
ABS_TMPDIR := $(shell $(CD) $(TMPDIR); $(PWD))
ABS_BINDIR := $(shell $(CD) $(BINDIR); $(PWD))
ABS_BUILDDIR := $(shell $(CD) $(BUILDDIR); $(PWD))
ABS_CHARSETS_JAR := $(shell $(CD) $(LIBDIR); $(PWD))/charsets.jar
REORDER_DIR = $(ABS_TMPDIR)/reorder/file_list
else
# cygpath.exe bug? `$(CYGPATH) -w -a $(BINDIR)` returns
# d:\j2se\build\windows-i586\tmp\build\windows-i586\bin instead of
# d:\j2se\build\windows-i586\bin
# so we get the absolute path this way:
ABS_BINDIR := $(subst \,/,$(shell $(CYGPATH) -w $(shell $(CD) $(BINDIR); $(PWD))))
ABS_TMPDIR := $(subst \,/,$(shell $(CYGPATH) -w $(shell $(CD) $(TMPDIR); $(PWD))))
ABS_BUILDDIR := $(subst \,/,$(shell $(CYGPATH) -w $(shell $(CD) $(BUILDDIR); $(PWD))))
# windows versions of the following paths are needed because without this
# processing they get converted by the cygwin shell to a path that the
# jar command does not understand.
ABS_CHARSETS_JAR := $(subst \,/,$(shell $(CYGPATH) -u $(shell $(CD) $(LIBDIR); $(PWD)))/charsets.jar
REORDER_DIR := $(subst \,/,$(shell $(CYGPATH) -u $(shell $(CD) $(TMPDIR); $(PWD)))/reorder/file_list
endif
simply the following should be sufficient:
ABS_CHARSETS_JAR := $(ABS_LIBDIR)/charsets.jar
REORDER_DIR := $(ABS_TMPDIR)/reorder/file_list
This makefile has no business defining variables like ABS_LIBDIR;
if those are needed, they should be defined in a higher-level
Makefile. Indeed, ABS_LIBDIR is already defined in common/Release.gmk.
I don't believe the comment about #cygpath.exe bug.
We are already dependent on the construct $(shell $(CYGPATH) -u -a ...)
working correctly elsewhere.
Similarly, the following code in make/common/Release.gmk is in need of cleanup:
# absolute directory names: note, these must exist prior to build
# time - they are created in the main Makefile.
ifndef USING_CYGWIN
ABS_BUILDDIR := $(shell $(CD) $(BUILDDIR); $(PWD))
ifdef USE_ONLY_BOOTDIR_TOOLS
ABS_BINDIR := $(shell $(CD) $(BOOTDIR); $(PWD))/bin
else
ABS_BINDIR := $(shell $(CD) $(BINDIR); $(PWD))
endif
ABS_LIBDIR := $(shell $(CD) $(LIBDIR); $(PWD))
ABS_TMPDIR := $(shell $(CD) $(TMPDIR); $(PWD))
ABS_HTMLCONVERTER := $(shell $(CD) $(BINDIR); $(PWD))/HtmlConverter$(EXE_SUFFIX)
JRE_IMAGE_BINDIR = $(JRE_IMAGE_DIR)/bin
JRE_IMAGE_THREADIR = $(JRE_IMAGE_DIR)/bin/*/native_threads
else
ABS_BUILDDIR := $(subst \,/,$(shell $(CYGPATH) -w -a $(BUILDDIR)))
ifdef USE_ONLY_BOOTDIR_TOOLS
ABS_BINDIR := $(subst \,/,$(shell $(CYGPATH) -w -a $(BOOTDIR)/bin))
else
ABS_BINDIR := $(subst \,/,$(shell $(CYGPATH) -w -a $(BINDIR)))
endif
ABS_TMPDIR := $(subst \,/,$(shell $(CYGPATH) -w -a $(TMPDIR)))
ABS_HTMLCONVERTER := $(subst \,/,$(shell $(CYGPATH) -w -a $(BIDDIR)/HtmlConverter$(EXE_SUFFIX)))
ABS_LIBDIR := $(subst \,/,$(shell $(CYGPATH) -w -a $(LIBDIR)))
JRE_IMAGE_BINDIR := $(subst \,/,$(shell $(CYGPATH) -w -a $(JRE_IMAGE_DIR)))/bin
JRE_IMAGE_THREADIR := $(subst \,/,$(shell $(CYGPATH) -w -a $(JRE_IMAGE_DIR)))/bin/*/native_threads
endif
###@###.### 2004-01-28
- relates to
-
JDK-6307370 Change how ALT* variable defaults are handled, create shared gmk files
-
- Resolved
-