Makefile.am: Make a libtool convenience library.
libffi: * Makefile.am: Make a libtool convenience library. * Makefile.in: Rebuilt. libjava: * java/io/File.java (normalizePath): New private method. (File (String)): Use normalizePath(). (File (String, String)): Likewise. * Makefile.am (libffi_files): Removed. (libgcj.la): Link libffi as a convenience library instead of refering to its object files directly. * Makefile.in: Rebuilt. From-SVN: r41298
This commit is contained in:
parent
f847167e3d
commit
52c2897732
7 changed files with 191 additions and 74 deletions
|
@ -1,3 +1,8 @@
|
||||||
|
2001-04-12 Bryce McKinlay <bryce@albatross.co.nz>
|
||||||
|
|
||||||
|
* Makefile.am: Make a libtool convenience library.
|
||||||
|
* Makefile.in: Rebuilt.
|
||||||
|
|
||||||
2001-03-29 Bryce McKinlay <bryce@albatross.co.nz>
|
2001-03-29 Bryce McKinlay <bryce@albatross.co.nz>
|
||||||
|
|
||||||
* configure.in: Use different syntax for subdirectory creation.
|
* configure.in: Use different syntax for subdirectory creation.
|
||||||
|
|
|
@ -80,6 +80,7 @@ toolexeclibdir = $(toolexecdir)/lib$(MULTISUBDIR)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
toolexeclib_LTLIBRARIES = libffi.la
|
toolexeclib_LTLIBRARIES = libffi.la
|
||||||
|
noinst_LTLIBRARIES = libfficonvenience.la
|
||||||
|
|
||||||
noinst_PROGRAMS = ffitest
|
noinst_PROGRAMS = ffitest
|
||||||
|
|
||||||
|
@ -104,33 +105,43 @@ libffi_la_common_SOURCES = src/debug.c src/prep_cif.c src/types.c \
|
||||||
src/raw_api.c src/java_raw_api.c
|
src/raw_api.c src/java_raw_api.c
|
||||||
if MIPS_GCC
|
if MIPS_GCC
|
||||||
libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_MIPS_GCC)
|
libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_MIPS_GCC)
|
||||||
|
libfficonvenience_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_MIPS_GCC)
|
||||||
endif
|
endif
|
||||||
if MIPS_SGI
|
if MIPS_SGI
|
||||||
libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_MIPS_SGI)
|
libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_MIPS_SGI)
|
||||||
|
libfficonvenience_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_MIPS_SGI)
|
||||||
endif
|
endif
|
||||||
if X86
|
if X86
|
||||||
libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_X86)
|
libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_X86)
|
||||||
|
libfficonvenience_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_X86)
|
||||||
endif
|
endif
|
||||||
if X86_WIN32
|
if X86_WIN32
|
||||||
libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_X86_WIN32)
|
libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_X86_WIN32)
|
||||||
|
libfficonvenience_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_X86_WIN32)
|
||||||
endif
|
endif
|
||||||
if SPARC
|
if SPARC
|
||||||
libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_SPARC)
|
libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_SPARC)
|
||||||
|
libfficonvenience_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_SPARC)
|
||||||
endif
|
endif
|
||||||
if ALPHA
|
if ALPHA
|
||||||
libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_ALPHA)
|
libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_ALPHA)
|
||||||
|
libfficonvenience_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_ALPHA)
|
||||||
endif
|
endif
|
||||||
if IA64
|
if IA64
|
||||||
libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_IA64)
|
libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_IA64)
|
||||||
|
libfficonvenience_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_IA64)
|
||||||
endif
|
endif
|
||||||
if M68K
|
if M68K
|
||||||
libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_M68K)
|
libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_M68K)
|
||||||
|
libfficonvenience_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_M68K)
|
||||||
endif
|
endif
|
||||||
if POWERPC
|
if POWERPC
|
||||||
libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_POWERPC)
|
libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_POWERPC)
|
||||||
|
libfficonvenience_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_POWERPC)
|
||||||
endif
|
endif
|
||||||
if ARM
|
if ARM
|
||||||
libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_ARM)
|
libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_ARM)
|
||||||
|
libfficonvenience_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_ARM)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
AM_CFLAGS = -fexceptions
|
AM_CFLAGS = -fexceptions
|
||||||
|
|
|
@ -151,6 +151,7 @@ MULTICLEAN = true
|
||||||
@USE_LIBDIR_FALSE@toolexecdir = @USE_LIBDIR_FALSE@$(exec_prefix)/$(target_alias)
|
@USE_LIBDIR_FALSE@toolexecdir = @USE_LIBDIR_FALSE@$(exec_prefix)/$(target_alias)
|
||||||
|
|
||||||
toolexeclib_LTLIBRARIES = libffi.la
|
toolexeclib_LTLIBRARIES = libffi.la
|
||||||
|
noinst_LTLIBRARIES = libfficonvenience.la
|
||||||
|
|
||||||
noinst_PROGRAMS = ffitest
|
noinst_PROGRAMS = ffitest
|
||||||
|
|
||||||
|
@ -182,6 +183,16 @@ libffi_la_common_SOURCES = src/debug.c src/prep_cif.c src/types.c \
|
||||||
@M68K_TRUE@libffi_la_SOURCES = @M68K_TRUE@$(libffi_la_common_SOURCES) $(TARGET_SRC_M68K)
|
@M68K_TRUE@libffi_la_SOURCES = @M68K_TRUE@$(libffi_la_common_SOURCES) $(TARGET_SRC_M68K)
|
||||||
@POWERPC_TRUE@libffi_la_SOURCES = @POWERPC_TRUE@$(libffi_la_common_SOURCES) $(TARGET_SRC_POWERPC)
|
@POWERPC_TRUE@libffi_la_SOURCES = @POWERPC_TRUE@$(libffi_la_common_SOURCES) $(TARGET_SRC_POWERPC)
|
||||||
@ARM_TRUE@libffi_la_SOURCES = @ARM_TRUE@$(libffi_la_common_SOURCES) $(TARGET_SRC_ARM)
|
@ARM_TRUE@libffi_la_SOURCES = @ARM_TRUE@$(libffi_la_common_SOURCES) $(TARGET_SRC_ARM)
|
||||||
|
@MIPS_GCC_TRUE@libfficonvenience_la_SOURCES = @MIPS_GCC_TRUE@$(libffi_la_common_SOURCES) $(TARGET_SRC_MIPS_GCC)
|
||||||
|
@MIPS_SGI_TRUE@libfficonvenience_la_SOURCES = @MIPS_SGI_TRUE@$(libffi_la_common_SOURCES) $(TARGET_SRC_MIPS_SGI)
|
||||||
|
@X86_TRUE@libfficonvenience_la_SOURCES = @X86_TRUE@$(libffi_la_common_SOURCES) $(TARGET_SRC_X86)
|
||||||
|
@X86_WIN32_TRUE@libfficonvenience_la_SOURCES = @X86_WIN32_TRUE@$(libffi_la_common_SOURCES) $(TARGET_SRC_X86_WIN32)
|
||||||
|
@SPARC_TRUE@libfficonvenience_la_SOURCES = @SPARC_TRUE@$(libffi_la_common_SOURCES) $(TARGET_SRC_SPARC)
|
||||||
|
@ALPHA_TRUE@libfficonvenience_la_SOURCES = @ALPHA_TRUE@$(libffi_la_common_SOURCES) $(TARGET_SRC_ALPHA)
|
||||||
|
@IA64_TRUE@libfficonvenience_la_SOURCES = @IA64_TRUE@$(libffi_la_common_SOURCES) $(TARGET_SRC_IA64)
|
||||||
|
@M68K_TRUE@libfficonvenience_la_SOURCES = @M68K_TRUE@$(libffi_la_common_SOURCES) $(TARGET_SRC_M68K)
|
||||||
|
@POWERPC_TRUE@libfficonvenience_la_SOURCES = @POWERPC_TRUE@$(libffi_la_common_SOURCES) $(TARGET_SRC_POWERPC)
|
||||||
|
@ARM_TRUE@libfficonvenience_la_SOURCES = @ARM_TRUE@$(libffi_la_common_SOURCES) $(TARGET_SRC_ARM)
|
||||||
|
|
||||||
AM_CFLAGS = -fexceptions
|
AM_CFLAGS = -fexceptions
|
||||||
|
|
||||||
|
@ -192,13 +203,48 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||||
mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs
|
mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs
|
||||||
CONFIG_HEADER = fficonfig.h
|
CONFIG_HEADER = fficonfig.h
|
||||||
CONFIG_CLEAN_FILES =
|
CONFIG_CLEAN_FILES =
|
||||||
LTLIBRARIES = $(toolexeclib_LTLIBRARIES)
|
LTLIBRARIES = $(noinst_LTLIBRARIES) $(toolexeclib_LTLIBRARIES)
|
||||||
|
|
||||||
|
|
||||||
DEFS = @DEFS@ -I. -I$(srcdir) -I.
|
DEFS = @DEFS@ -I. -I$(srcdir) -I.
|
||||||
CPPFLAGS = @CPPFLAGS@
|
CPPFLAGS = @CPPFLAGS@
|
||||||
LDFLAGS = @LDFLAGS@
|
LDFLAGS = @LDFLAGS@
|
||||||
LIBS = @LIBS@
|
LIBS = @LIBS@
|
||||||
|
libfficonvenience_la_LDFLAGS =
|
||||||
|
libfficonvenience_la_LIBADD =
|
||||||
|
@SPARC_TRUE@libfficonvenience_la_OBJECTS = src/debug.lo src/prep_cif.lo \
|
||||||
|
@SPARC_TRUE@src/types.lo src/raw_api.lo src/java_raw_api.lo \
|
||||||
|
@SPARC_TRUE@src/sparc/ffi.lo src/sparc/v8.lo src/sparc/v9.lo
|
||||||
|
@MIPS_SGI_TRUE@libfficonvenience_la_OBJECTS = src/debug.lo \
|
||||||
|
@MIPS_SGI_TRUE@src/prep_cif.lo src/types.lo src/raw_api.lo \
|
||||||
|
@MIPS_SGI_TRUE@src/java_raw_api.lo src/mips/ffi.lo src/mips/o32.lo \
|
||||||
|
@MIPS_SGI_TRUE@src/mips/n32.lo
|
||||||
|
@IA64_TRUE@libfficonvenience_la_OBJECTS = src/debug.lo src/prep_cif.lo \
|
||||||
|
@IA64_TRUE@src/types.lo src/raw_api.lo src/java_raw_api.lo \
|
||||||
|
@IA64_TRUE@src/ia64/ffi.lo src/ia64/unix.lo
|
||||||
|
@MIPS_GCC_TRUE@libfficonvenience_la_OBJECTS = src/debug.lo \
|
||||||
|
@MIPS_GCC_TRUE@src/prep_cif.lo src/types.lo src/raw_api.lo \
|
||||||
|
@MIPS_GCC_TRUE@src/java_raw_api.lo src/mips/ffi.lo src/mips/o32.lo \
|
||||||
|
@MIPS_GCC_TRUE@src/mips/n32.lo
|
||||||
|
@M68K_TRUE@libfficonvenience_la_OBJECTS = src/debug.lo src/prep_cif.lo \
|
||||||
|
@M68K_TRUE@src/types.lo src/raw_api.lo src/java_raw_api.lo \
|
||||||
|
@M68K_TRUE@src/m68k/ffi.lo src/m68k/sysv.lo
|
||||||
|
@ALPHA_TRUE@libfficonvenience_la_OBJECTS = src/debug.lo src/prep_cif.lo \
|
||||||
|
@ALPHA_TRUE@src/types.lo src/raw_api.lo src/java_raw_api.lo \
|
||||||
|
@ALPHA_TRUE@src/alpha/ffi.lo src/alpha/osf.lo
|
||||||
|
@X86_TRUE@libfficonvenience_la_OBJECTS = src/debug.lo src/prep_cif.lo \
|
||||||
|
@X86_TRUE@src/types.lo src/raw_api.lo src/java_raw_api.lo \
|
||||||
|
@X86_TRUE@src/x86/ffi.lo src/x86/sysv.lo
|
||||||
|
@ARM_TRUE@libfficonvenience_la_OBJECTS = src/debug.lo src/prep_cif.lo \
|
||||||
|
@ARM_TRUE@src/types.lo src/raw_api.lo src/java_raw_api.lo \
|
||||||
|
@ARM_TRUE@src/arm/sysv.lo src/arm/ffi.lo
|
||||||
|
@POWERPC_TRUE@libfficonvenience_la_OBJECTS = src/debug.lo \
|
||||||
|
@POWERPC_TRUE@src/prep_cif.lo src/types.lo src/raw_api.lo \
|
||||||
|
@POWERPC_TRUE@src/java_raw_api.lo src/powerpc/ffi.lo \
|
||||||
|
@POWERPC_TRUE@src/powerpc/sysv.lo src/powerpc/ppc_closure.lo
|
||||||
|
@X86_WIN32_TRUE@libfficonvenience_la_OBJECTS = src/debug.lo \
|
||||||
|
@X86_WIN32_TRUE@src/prep_cif.lo src/types.lo src/raw_api.lo \
|
||||||
|
@X86_WIN32_TRUE@src/java_raw_api.lo src/x86/ffi.lo src/x86/win32.lo
|
||||||
libffi_la_LIBADD =
|
libffi_la_LIBADD =
|
||||||
@SPARC_TRUE@libffi_la_OBJECTS = src/debug.lo src/prep_cif.lo \
|
@SPARC_TRUE@libffi_la_OBJECTS = src/debug.lo src/prep_cif.lo \
|
||||||
@SPARC_TRUE@src/types.lo src/raw_api.lo src/java_raw_api.lo \
|
@SPARC_TRUE@src/types.lo src/raw_api.lo src/java_raw_api.lo \
|
||||||
|
@ -250,8 +296,8 @@ DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
|
||||||
|
|
||||||
TAR = gtar
|
TAR = gtar
|
||||||
GZIP_ENV = --best
|
GZIP_ENV = --best
|
||||||
SOURCES = $(libffi_la_SOURCES) $(ffitest_SOURCES)
|
SOURCES = $(libfficonvenience_la_SOURCES) $(libffi_la_SOURCES) $(ffitest_SOURCES)
|
||||||
OBJECTS = $(libffi_la_OBJECTS) $(ffitest_OBJECTS)
|
OBJECTS = $(libfficonvenience_la_OBJECTS) $(libffi_la_OBJECTS) $(ffitest_OBJECTS)
|
||||||
|
|
||||||
all: all-redirect
|
all: all-redirect
|
||||||
.SUFFIXES:
|
.SUFFIXES:
|
||||||
|
@ -299,6 +345,15 @@ distclean-hdr:
|
||||||
|
|
||||||
maintainer-clean-hdr:
|
maintainer-clean-hdr:
|
||||||
|
|
||||||
|
mostlyclean-noinstLTLIBRARIES:
|
||||||
|
|
||||||
|
clean-noinstLTLIBRARIES:
|
||||||
|
-test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES)
|
||||||
|
|
||||||
|
distclean-noinstLTLIBRARIES:
|
||||||
|
|
||||||
|
maintainer-clean-noinstLTLIBRARIES:
|
||||||
|
|
||||||
mostlyclean-toolexeclibLTLIBRARIES:
|
mostlyclean-toolexeclibLTLIBRARIES:
|
||||||
|
|
||||||
clean-toolexeclibLTLIBRARIES:
|
clean-toolexeclibLTLIBRARIES:
|
||||||
|
@ -350,6 +405,9 @@ distclean-libtool:
|
||||||
|
|
||||||
maintainer-clean-libtool:
|
maintainer-clean-libtool:
|
||||||
|
|
||||||
|
libfficonvenience.la: $(libfficonvenience_la_OBJECTS) $(libfficonvenience_la_DEPENDENCIES)
|
||||||
|
$(LINK) $(libfficonvenience_la_LDFLAGS) $(libfficonvenience_la_OBJECTS) $(libfficonvenience_la_LIBADD) $(LIBS)
|
||||||
|
|
||||||
libffi.la: $(libffi_la_OBJECTS) $(libffi_la_DEPENDENCIES)
|
libffi.la: $(libffi_la_OBJECTS) $(libffi_la_DEPENDENCIES)
|
||||||
$(LINK) -rpath $(toolexeclibdir) $(libffi_la_LDFLAGS) $(libffi_la_OBJECTS) $(libffi_la_LIBADD) $(LIBS)
|
$(LINK) -rpath $(toolexeclibdir) $(libffi_la_LDFLAGS) $(libffi_la_OBJECTS) $(libffi_la_LIBADD) $(LIBS)
|
||||||
|
|
||||||
|
@ -559,29 +617,31 @@ distclean-generic:
|
||||||
-rm -f config.cache config.log stamp-h stamp-h[0-9]*
|
-rm -f config.cache config.log stamp-h stamp-h[0-9]*
|
||||||
|
|
||||||
maintainer-clean-generic:
|
maintainer-clean-generic:
|
||||||
mostlyclean-am: mostlyclean-hdr mostlyclean-toolexeclibLTLIBRARIES \
|
mostlyclean-am: mostlyclean-hdr mostlyclean-noinstLTLIBRARIES \
|
||||||
mostlyclean-compile mostlyclean-libtool \
|
mostlyclean-toolexeclibLTLIBRARIES mostlyclean-compile \
|
||||||
mostlyclean-noinstPROGRAMS mostlyclean-tags \
|
mostlyclean-libtool mostlyclean-noinstPROGRAMS \
|
||||||
mostlyclean-generic
|
mostlyclean-tags mostlyclean-generic
|
||||||
|
|
||||||
mostlyclean: mostlyclean-recursive
|
mostlyclean: mostlyclean-recursive
|
||||||
|
|
||||||
clean-am: clean-hdr clean-toolexeclibLTLIBRARIES clean-compile \
|
clean-am: clean-hdr clean-noinstLTLIBRARIES \
|
||||||
|
clean-toolexeclibLTLIBRARIES clean-compile \
|
||||||
clean-libtool clean-noinstPROGRAMS clean-tags \
|
clean-libtool clean-noinstPROGRAMS clean-tags \
|
||||||
clean-generic mostlyclean-am
|
clean-generic mostlyclean-am
|
||||||
|
|
||||||
clean: clean-recursive
|
clean: clean-recursive
|
||||||
|
|
||||||
distclean-am: distclean-hdr distclean-toolexeclibLTLIBRARIES \
|
distclean-am: distclean-hdr distclean-noinstLTLIBRARIES \
|
||||||
distclean-compile distclean-libtool \
|
distclean-toolexeclibLTLIBRARIES distclean-compile \
|
||||||
distclean-noinstPROGRAMS distclean-tags \
|
distclean-libtool distclean-noinstPROGRAMS \
|
||||||
distclean-generic clean-am
|
distclean-tags distclean-generic clean-am
|
||||||
-rm -f libtool
|
-rm -f libtool
|
||||||
|
|
||||||
distclean: distclean-recursive
|
distclean: distclean-recursive
|
||||||
-rm -f config.status
|
-rm -f config.status
|
||||||
|
|
||||||
maintainer-clean-am: maintainer-clean-hdr \
|
maintainer-clean-am: maintainer-clean-hdr \
|
||||||
|
maintainer-clean-noinstLTLIBRARIES \
|
||||||
maintainer-clean-toolexeclibLTLIBRARIES \
|
maintainer-clean-toolexeclibLTLIBRARIES \
|
||||||
maintainer-clean-compile maintainer-clean-libtool \
|
maintainer-clean-compile maintainer-clean-libtool \
|
||||||
maintainer-clean-noinstPROGRAMS maintainer-clean-tags \
|
maintainer-clean-noinstPROGRAMS maintainer-clean-tags \
|
||||||
|
@ -593,6 +653,8 @@ maintainer-clean: maintainer-clean-recursive
|
||||||
-rm -f config.status
|
-rm -f config.status
|
||||||
|
|
||||||
.PHONY: mostlyclean-hdr distclean-hdr clean-hdr maintainer-clean-hdr \
|
.PHONY: mostlyclean-hdr distclean-hdr clean-hdr maintainer-clean-hdr \
|
||||||
|
mostlyclean-noinstLTLIBRARIES distclean-noinstLTLIBRARIES \
|
||||||
|
clean-noinstLTLIBRARIES maintainer-clean-noinstLTLIBRARIES \
|
||||||
mostlyclean-toolexeclibLTLIBRARIES distclean-toolexeclibLTLIBRARIES \
|
mostlyclean-toolexeclibLTLIBRARIES distclean-toolexeclibLTLIBRARIES \
|
||||||
clean-toolexeclibLTLIBRARIES maintainer-clean-toolexeclibLTLIBRARIES \
|
clean-toolexeclibLTLIBRARIES maintainer-clean-toolexeclibLTLIBRARIES \
|
||||||
uninstall-toolexeclibLTLIBRARIES install-toolexeclibLTLIBRARIES \
|
uninstall-toolexeclibLTLIBRARIES install-toolexeclibLTLIBRARIES \
|
||||||
|
|
|
@ -1,3 +1,14 @@
|
||||||
|
2001-04-12 Bryce McKinlay <bryce@albatross.co.nz>
|
||||||
|
|
||||||
|
* java/io/File.java (normalizePath): New private method.
|
||||||
|
(File (String)): Use normalizePath().
|
||||||
|
(File (String, String)): Likewise.
|
||||||
|
|
||||||
|
* Makefile.am (libffi_files): Removed.
|
||||||
|
(libgcj.la): Link libffi as a convenience library instead of
|
||||||
|
refering to its object files directly.
|
||||||
|
* Makefile.in: Rebuilt.
|
||||||
|
|
||||||
2001-04-08 Per Bothner <per@bothner.com>
|
2001-04-08 Per Bothner <per@bothner.com>
|
||||||
|
|
||||||
* java/lang/natString.cc (_Jv_NewStringUtf8Const): Register finalizer.
|
* java/lang/natString.cc (_Jv_NewStringUtf8Const): Register finalizer.
|
||||||
|
|
|
@ -128,9 +128,6 @@ javao_files = $(java_source_files:.java=.lo) \
|
||||||
$(built_java_source_files:.java=.lo)
|
$(built_java_source_files:.java=.lo)
|
||||||
x_javao_files = $(x_java_source_files:.java=.lo)
|
x_javao_files = $(x_java_source_files:.java=.lo)
|
||||||
|
|
||||||
## Extract the libffi object file names.
|
|
||||||
libffi_files = `find ../libffi/ \-name '*.lo'`
|
|
||||||
|
|
||||||
libgcj_la_SOURCES = prims.cc posix.cc jni.cc exception.cc \
|
libgcj_la_SOURCES = prims.cc posix.cc jni.cc exception.cc \
|
||||||
resolve.cc defineclass.cc interpret.cc name-finder.cc \
|
resolve.cc defineclass.cc interpret.cc name-finder.cc \
|
||||||
$(nat_source_files)
|
$(nat_source_files)
|
||||||
|
@ -140,11 +137,10 @@ libgcj_la_DEPENDENCIES = libgcj.jar $(javao_files) \
|
||||||
$(c_files) $(GCOBJS) $(THREADOBJS) $(LIBLTDL)
|
$(c_files) $(GCOBJS) $(THREADOBJS) $(LIBLTDL)
|
||||||
|
|
||||||
libgcj_la_LIBADD = $(javao_files) $(c_files) $(GCOBJS) \
|
libgcj_la_LIBADD = $(javao_files) $(c_files) $(GCOBJS) \
|
||||||
$(THREADOBJS) $(libffi_files)
|
$(THREADOBJS)
|
||||||
# Include THREADLIBS here to ensure that the correct version of
|
# Include THREADLIBS here to ensure that the correct version of
|
||||||
# certain linuxthread functions get linked:
|
# certain linuxthread functions get linked:
|
||||||
libgcj_la_LDFLAGS = -L$(here)/../libstdc++-v3/libsupc++ -lsupc++ \
|
libgcj_la_LDFLAGS = -rpath $(toolexeclibdir) $(THREADLIBS) $(LIBLTDL) \
|
||||||
-rpath $(toolexeclibdir) $(THREADLIBS) $(LIBLTDL) \
|
|
||||||
## The mysterious backslash is consumed by make.
|
## The mysterious backslash is consumed by make.
|
||||||
-version-info `grep -v '^\#' $(srcdir)/libtool-version`
|
-version-info `grep -v '^\#' $(srcdir)/libtool-version`
|
||||||
libgcj_la_LINK = $(LIBLINK)
|
libgcj_la_LINK = $(LIBLINK)
|
||||||
|
@ -154,7 +150,6 @@ EXTRA_libgcjx_la_SOURCES = $(x_java_source_files)
|
||||||
libgcjx_la_DEPENDENCIES = libgcj.jar $(x_javao_files)
|
libgcjx_la_DEPENDENCIES = libgcj.jar $(x_javao_files)
|
||||||
libgcjx_la_LIBADD = $(x_javao_files)
|
libgcjx_la_LIBADD = $(x_javao_files)
|
||||||
libgcjx_la_LDFLAGS = @X_PRE_LIBS@ @X_LIBS@ -lX11 @X_EXTRA_LIBS@ \
|
libgcjx_la_LDFLAGS = @X_PRE_LIBS@ @X_LIBS@ -lX11 @X_EXTRA_LIBS@ \
|
||||||
-L$(here)/../libstdc++-v3/libsupc++ -lsupc++ \
|
|
||||||
-rpath $(toolexeclibdir) \
|
-rpath $(toolexeclibdir) \
|
||||||
## The mysterious backslash is consumed by make.
|
## The mysterious backslash is consumed by make.
|
||||||
-version-info `grep -v '^\#' $(srcdir)/libtool-version`
|
-version-info `grep -v '^\#' $(srcdir)/libtool-version`
|
||||||
|
@ -264,13 +259,16 @@ $(javao_files) $(x_javao_files): %.lo: %.java
|
||||||
libgcj.la: $(libgcj_la_OBJECTS) $(libgcj_la_DEPENDENCIES)
|
libgcj.la: $(libgcj_la_OBJECTS) $(libgcj_la_DEPENDENCIES)
|
||||||
@echo $(libgcj_la_OBJECTS) > libgcj.objectlist;
|
@echo $(libgcj_la_OBJECTS) > libgcj.objectlist;
|
||||||
@echo $(libgcj_la_LIBADD) >> libgcj.objectlist;
|
@echo $(libgcj_la_LIBADD) >> libgcj.objectlist;
|
||||||
$(libgcj_la_LINK) -objectlist libgcj.objectlist -rpath $(toolexeclibdir) $(libgcj_la_LDFLAGS) $(LIBS)
|
$(libgcj_la_LINK) -objectlist libgcj.objectlist \
|
||||||
|
../libstdc++-v3/libsupc++/libsupc++convenience.la \
|
||||||
|
../libffi/libfficonvenience.la \
|
||||||
|
-rpath $(toolexeclibdir) $(libgcj_la_LDFLAGS) $(LIBS)
|
||||||
|
|
||||||
libgcjx.la: $(libgcjx_la_OBJECTS) $(libgcjx_la_DEPENDENCIES)
|
libgcjx.la: $(libgcjx_la_OBJECTS) $(libgcjx_la_DEPENDENCIES)
|
||||||
@echo $(libgcjx_la_OBJECTS) > libgcjx.objectlist;
|
@echo $(libgcjx_la_OBJECTS) > libgcjx.objectlist;
|
||||||
@echo $(libgcjx_la_LIBADD) >> libgcjx.objectlist;
|
@echo $(libgcjx_la_LIBADD) >> libgcjx.objectlist;
|
||||||
$(libgcjx_la_LINK) -objectlist libgcjx.objectlist -rpath $(toolexeclibdir) $(libgcjx_la_LDFLAGS) $(LIBS)
|
$(libgcjx_la_LINK) -objectlist libgcjx.objectlist \
|
||||||
|
-rpath $(toolexeclibdir) $(libgcjx_la_LDFLAGS) $(LIBS)
|
||||||
|
|
||||||
## ################################################################
|
## ################################################################
|
||||||
|
|
||||||
|
|
|
@ -119,43 +119,29 @@ here = @here@
|
||||||
libgcj_basedir = @libgcj_basedir@
|
libgcj_basedir = @libgcj_basedir@
|
||||||
|
|
||||||
AUTOMAKE_OPTIONS = foreign
|
AUTOMAKE_OPTIONS = foreign
|
||||||
@TESTSUBDIR_TRUE@SUBDIRS = \
|
@TESTSUBDIR_TRUE@SUBDIRS = @TESTSUBDIR_TRUE@$(DIRLTDL) testsuite gcj include
|
||||||
@TESTSUBDIR_TRUE@$(DIRLTDL) testsuite gcj include
|
@TESTSUBDIR_FALSE@SUBDIRS = @TESTSUBDIR_FALSE@$(DIRLTDL) gcj include
|
||||||
@TESTSUBDIR_FALSE@SUBDIRS = \
|
@USE_LIBDIR_TRUE@toolexeclibdir = @USE_LIBDIR_TRUE@$(libdir)$(MULTISUBDIR)
|
||||||
@TESTSUBDIR_FALSE@$(DIRLTDL) gcj include
|
@USE_LIBDIR_FALSE@toolexeclibdir = @USE_LIBDIR_FALSE@$(toolexecdir)/lib$(MULTISUBDIR)
|
||||||
@USE_LIBDIR_TRUE@toolexeclibdir = \
|
@USE_LIBDIR_FALSE@toolexecdir = @USE_LIBDIR_FALSE@$(exec_prefix)/$(target_alias)
|
||||||
@USE_LIBDIR_TRUE@$(libdir)$(MULTISUBDIR)
|
@XLIB_AWT_TRUE@cond_x_ltlibrary = @XLIB_AWT_TRUE@libgcjx.la
|
||||||
@USE_LIBDIR_FALSE@toolexeclibdir = \
|
@XLIB_AWT_FALSE@cond_x_ltlibrary =
|
||||||
@USE_LIBDIR_FALSE@$(toolexecdir)/lib$(MULTISUBDIR)
|
|
||||||
@USE_LIBDIR_FALSE@toolexecdir = \
|
|
||||||
@USE_LIBDIR_FALSE@$(exec_prefix)/$(target_alias)
|
|
||||||
@XLIB_AWT_TRUE@cond_x_ltlibrary = \
|
|
||||||
@XLIB_AWT_TRUE@libgcjx.la
|
|
||||||
@XLIB_AWT_FALSE@cond_x_ltlibrary = \
|
|
||||||
|
|
||||||
toolexeclib_LTLIBRARIES = libgcj.la $(cond_x_ltlibrary)
|
toolexeclib_LTLIBRARIES = libgcj.la $(cond_x_ltlibrary)
|
||||||
toolexeclib_DATA = libgcj.spec
|
toolexeclib_DATA = libgcj.spec
|
||||||
data_DATA = libgcj.jar
|
data_DATA = libgcj.jar
|
||||||
|
|
||||||
@NEEDS_DATA_START_TRUE@toolexeclib_LIBRARIES = \
|
@NEEDS_DATA_START_TRUE@toolexeclib_LIBRARIES = @NEEDS_DATA_START_TRUE@libgcjdata.a
|
||||||
@NEEDS_DATA_START_TRUE@libgcjdata.a
|
@NEEDS_DATA_START_TRUE@libgcjdata_a_SOURCES = @NEEDS_DATA_START_TRUE@libgcjdata.c
|
||||||
@NEEDS_DATA_START_TRUE@libgcjdata_a_SOURCES = \
|
|
||||||
@NEEDS_DATA_START_TRUE@libgcjdata.c
|
|
||||||
|
|
||||||
@NATIVE_TRUE@bin_PROGRAMS = \
|
@NATIVE_TRUE@bin_PROGRAMS = @NATIVE_TRUE@jv-convert gij
|
||||||
@NATIVE_TRUE@jv-convert gij
|
|
||||||
|
|
||||||
bin_SCRIPTS = addr2name.awk
|
bin_SCRIPTS = addr2name.awk
|
||||||
@CANADIAN_TRUE@@NULL_TARGET_TRUE@ZIP = \
|
@CANADIAN_TRUE@@NULL_TARGET_TRUE@ZIP = @CANADIAN_TRUE@@NULL_TARGET_TRUE@$(MULTIBUILDTOP)../$(COMPPATH)/fastjar/fastjar$(EXEEXT)
|
||||||
@CANADIAN_TRUE@@NULL_TARGET_TRUE@$(MULTIBUILDTOP)../$(COMPPATH)/fastjar/fastjar$(EXEEXT)
|
@CANADIAN_TRUE@@NULL_TARGET_FALSE@ZIP = @CANADIAN_TRUE@@NULL_TARGET_FALSE@fastjar
|
||||||
@CANADIAN_TRUE@@NULL_TARGET_FALSE@ZIP = \
|
@CANADIAN_FALSE@ZIP = @CANADIAN_FALSE@$(MULTIBUILDTOP)../$(COMPPATH)/fastjar/fastjar$(EXEEXT)
|
||||||
@CANADIAN_TRUE@@NULL_TARGET_FALSE@fastjar
|
@CANADIAN_TRUE@GCJH = @CANADIAN_TRUE@gcjh
|
||||||
@CANADIAN_FALSE@ZIP = \
|
@CANADIAN_FALSE@GCJH = @CANADIAN_FALSE@$(MULTIBUILDTOP)../$(COMPPATH)/gcc/gcjh$(EXEEXT)
|
||||||
@CANADIAN_FALSE@$(MULTIBUILDTOP)../$(COMPPATH)/fastjar/fastjar$(EXEEXT)
|
|
||||||
@CANADIAN_TRUE@GCJH = \
|
|
||||||
@CANADIAN_TRUE@gcjh
|
|
||||||
@CANADIAN_FALSE@GCJH = \
|
|
||||||
@CANADIAN_FALSE@$(MULTIBUILDTOP)../$(COMPPATH)/gcc/gcjh$(EXEEXT)
|
|
||||||
|
|
||||||
GCJ_WITH_FLAGS = $(GCJ) --encoding=UTF-8
|
GCJ_WITH_FLAGS = $(GCJ) --encoding=UTF-8
|
||||||
|
|
||||||
|
@ -174,10 +160,8 @@ AM_CXXFLAGS = -fno-rtti -fvtable-thunks -fnon-call-exceptions \
|
||||||
-fdollars-in-identifiers \
|
-fdollars-in-identifiers \
|
||||||
@LIBGCJ_CXXFLAGS@ @X_CFLAGS@ $(WARNINGS) -D_GNU_SOURCE
|
@LIBGCJ_CXXFLAGS@ @X_CFLAGS@ $(WARNINGS) -D_GNU_SOURCE
|
||||||
|
|
||||||
@USING_GCC_TRUE@AM_CFLAGS = \
|
@USING_GCC_TRUE@AM_CFLAGS = @USING_GCC_TRUE@@LIBGCJ_CFLAGS@ $(WARNINGS)
|
||||||
@USING_GCC_TRUE@@LIBGCJ_CFLAGS@ $(WARNINGS)
|
@USING_GCC_FALSE@AM_CFLAGS = @USING_GCC_FALSE@@LIBGCJ_CFLAGS@
|
||||||
@USING_GCC_FALSE@AM_CFLAGS = \
|
|
||||||
@USING_GCC_FALSE@@LIBGCJ_CFLAGS@
|
|
||||||
|
|
||||||
JCFLAGS = -g
|
JCFLAGS = -g
|
||||||
JC1FLAGS = @LIBGCJ_JAVAFLAGS@ $(GCJFLAGS)
|
JC1FLAGS = @LIBGCJ_JAVAFLAGS@ $(GCJFLAGS)
|
||||||
|
@ -197,8 +181,6 @@ javao_files = $(java_source_files:.java=.lo) \
|
||||||
|
|
||||||
x_javao_files = $(x_java_source_files:.java=.lo)
|
x_javao_files = $(x_java_source_files:.java=.lo)
|
||||||
|
|
||||||
libffi_files = `find ../libffi/ \-name '*.lo'`
|
|
||||||
|
|
||||||
libgcj_la_SOURCES = prims.cc posix.cc jni.cc exception.cc \
|
libgcj_la_SOURCES = prims.cc posix.cc jni.cc exception.cc \
|
||||||
resolve.cc defineclass.cc interpret.cc name-finder.cc \
|
resolve.cc defineclass.cc interpret.cc name-finder.cc \
|
||||||
$(nat_source_files)
|
$(nat_source_files)
|
||||||
|
@ -211,12 +193,11 @@ libgcj_la_DEPENDENCIES = libgcj.jar $(javao_files) \
|
||||||
|
|
||||||
|
|
||||||
libgcj_la_LIBADD = $(javao_files) $(c_files) $(GCOBJS) \
|
libgcj_la_LIBADD = $(javao_files) $(c_files) $(GCOBJS) \
|
||||||
$(THREADOBJS) $(libffi_files)
|
$(THREADOBJS)
|
||||||
|
|
||||||
# Include THREADLIBS here to ensure that the correct version of
|
# Include THREADLIBS here to ensure that the correct version of
|
||||||
# certain linuxthread functions get linked:
|
# certain linuxthread functions get linked:
|
||||||
libgcj_la_LDFLAGS = -L$(here)/../libstdc++-v3/libsupc++ -lsupc++ \
|
libgcj_la_LDFLAGS = -rpath $(toolexeclibdir) $(THREADLIBS) $(LIBLTDL) \
|
||||||
-rpath $(toolexeclibdir) $(THREADLIBS) $(LIBLTDL) \
|
|
||||||
-version-info `grep -v '^\#' $(srcdir)/libtool-version`
|
-version-info `grep -v '^\#' $(srcdir)/libtool-version`
|
||||||
|
|
||||||
libgcj_la_LINK = $(LIBLINK)
|
libgcj_la_LINK = $(LIBLINK)
|
||||||
|
@ -226,7 +207,6 @@ EXTRA_libgcjx_la_SOURCES = $(x_java_source_files)
|
||||||
libgcjx_la_DEPENDENCIES = libgcj.jar $(x_javao_files)
|
libgcjx_la_DEPENDENCIES = libgcj.jar $(x_javao_files)
|
||||||
libgcjx_la_LIBADD = $(x_javao_files)
|
libgcjx_la_LIBADD = $(x_javao_files)
|
||||||
libgcjx_la_LDFLAGS = @X_PRE_LIBS@ @X_LIBS@ -lX11 @X_EXTRA_LIBS@ \
|
libgcjx_la_LDFLAGS = @X_PRE_LIBS@ @X_LIBS@ -lX11 @X_EXTRA_LIBS@ \
|
||||||
-L$(here)/../libstdc++-v3/libsupc++ -lsupc++ \
|
|
||||||
-rpath $(toolexeclibdir) \
|
-rpath $(toolexeclibdir) \
|
||||||
-version-info `grep -v '^\#' $(srcdir)/libtool-version`
|
-version-info `grep -v '^\#' $(srcdir)/libtool-version`
|
||||||
|
|
||||||
|
@ -249,8 +229,7 @@ extra_headers = java/lang/Object.h java/lang/Class.h
|
||||||
|
|
||||||
NM = nm
|
NM = nm
|
||||||
|
|
||||||
@NATIVE_TRUE@@MAINTAINER_MODE_TRUE@noinst_PROGRAMS = \
|
@NATIVE_TRUE@@MAINTAINER_MODE_TRUE@noinst_PROGRAMS = @NATIVE_TRUE@@MAINTAINER_MODE_TRUE@gen-from-JIS
|
||||||
@NATIVE_TRUE@@MAINTAINER_MODE_TRUE@gen-from-JIS
|
|
||||||
|
|
||||||
CONVERT_DIR = gnu/gcj/convert
|
CONVERT_DIR = gnu/gcj/convert
|
||||||
|
|
||||||
|
@ -1215,7 +1194,7 @@ libgcj-test.spec.in libgcj.spec.in
|
||||||
|
|
||||||
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
|
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
|
||||||
|
|
||||||
TAR = tar
|
TAR = gtar
|
||||||
GZIP_ENV = --best
|
GZIP_ENV = --best
|
||||||
DIST_SUBDIRS = @DIRLTDL@ testsuite gcj include @DIRLTDL@ gcj include
|
DIST_SUBDIRS = @DIRLTDL@ testsuite gcj include @DIRLTDL@ gcj include
|
||||||
DEP_FILES = .deps/$(srcdir)/$(CONVERT_DIR)/gen-from-JIS.P \
|
DEP_FILES = .deps/$(srcdir)/$(CONVERT_DIR)/gen-from-JIS.P \
|
||||||
|
@ -2113,7 +2092,7 @@ distdir: $(DISTFILES)
|
||||||
@for file in $(DISTFILES); do \
|
@for file in $(DISTFILES); do \
|
||||||
d=$(srcdir); \
|
d=$(srcdir); \
|
||||||
if test -d $$d/$$file; then \
|
if test -d $$d/$$file; then \
|
||||||
cp -pr $$/$$file $(distdir)/$$file; \
|
cp -pr $$d/$$file $(distdir)/$$file; \
|
||||||
else \
|
else \
|
||||||
test -f $(distdir)/$$file \
|
test -f $(distdir)/$$file \
|
||||||
|| ln $$d/$$file $(distdir)/$$file 2> /dev/null \
|
|| ln $$d/$$file $(distdir)/$$file 2> /dev/null \
|
||||||
|
@ -2363,12 +2342,16 @@ $(javao_files) $(x_javao_files): %.lo: %.java
|
||||||
libgcj.la: $(libgcj_la_OBJECTS) $(libgcj_la_DEPENDENCIES)
|
libgcj.la: $(libgcj_la_OBJECTS) $(libgcj_la_DEPENDENCIES)
|
||||||
@echo $(libgcj_la_OBJECTS) > libgcj.objectlist;
|
@echo $(libgcj_la_OBJECTS) > libgcj.objectlist;
|
||||||
@echo $(libgcj_la_LIBADD) >> libgcj.objectlist;
|
@echo $(libgcj_la_LIBADD) >> libgcj.objectlist;
|
||||||
$(libgcj_la_LINK) -objectlist libgcj.objectlist -rpath $(toolexeclibdir) $(libgcj_la_LDFLAGS) $(LIBS)
|
$(libgcj_la_LINK) -objectlist libgcj.objectlist \
|
||||||
|
../libstdc++-v3/libsupc++/libsupc++convenience.la \
|
||||||
|
../libffi/libfficonvenience.la \
|
||||||
|
-rpath $(toolexeclibdir) $(libgcj_la_LDFLAGS) $(LIBS)
|
||||||
|
|
||||||
libgcjx.la: $(libgcjx_la_OBJECTS) $(libgcjx_la_DEPENDENCIES)
|
libgcjx.la: $(libgcjx_la_OBJECTS) $(libgcjx_la_DEPENDENCIES)
|
||||||
@echo $(libgcjx_la_OBJECTS) > libgcjx.objectlist;
|
@echo $(libgcjx_la_OBJECTS) > libgcjx.objectlist;
|
||||||
@echo $(libgcjx_la_LIBADD) >> libgcjx.objectlist;
|
@echo $(libgcjx_la_LIBADD) >> libgcjx.objectlist;
|
||||||
$(libgcjx_la_LINK) -objectlist libgcjx.objectlist -rpath $(toolexeclibdir) $(libgcjx_la_LDFLAGS) $(LIBS)
|
$(libgcjx_la_LINK) -objectlist libgcjx.objectlist \
|
||||||
|
-rpath $(toolexeclibdir) $(libgcjx_la_LDFLAGS) $(LIBS)
|
||||||
|
|
||||||
.class.h:
|
.class.h:
|
||||||
$(GCJH) -classpath $(top_builddir) $(basename $<)
|
$(GCJH) -classpath $(top_builddir) $(basename $<)
|
||||||
|
|
|
@ -76,9 +76,54 @@ public class File implements Serializable, Comparable
|
||||||
|
|
||||||
public File (String p)
|
public File (String p)
|
||||||
{
|
{
|
||||||
if (p == null)
|
path = normalizePath(p);
|
||||||
throw new NullPointerException ();
|
}
|
||||||
path = p;
|
|
||||||
|
// Remove duplicate and redundant separator characters.
|
||||||
|
private String normalizePath(String p)
|
||||||
|
{
|
||||||
|
int dupIndex = p.indexOf(dupSeparator);
|
||||||
|
int plen = p.length();
|
||||||
|
|
||||||
|
// Special case: permit Windows UNC path prefix.
|
||||||
|
if (dupSeparator == "\\" && dupIndex == 0)
|
||||||
|
dupIndex = p.indexOf(dupSeparator, 1);
|
||||||
|
|
||||||
|
if (dupIndex == -1)
|
||||||
|
{
|
||||||
|
// Ignore trailing separator.
|
||||||
|
if (plen > 1 && p.charAt(plen - 1) == separatorChar)
|
||||||
|
return p.substring(0, plen - 1);
|
||||||
|
else
|
||||||
|
return p;
|
||||||
|
}
|
||||||
|
|
||||||
|
StringBuffer newpath = new StringBuffer(plen);
|
||||||
|
int last = 0;
|
||||||
|
while (dupIndex != -1)
|
||||||
|
{
|
||||||
|
newpath.append(p.substring(last, dupIndex));
|
||||||
|
// Ignore the duplicate path characters.
|
||||||
|
while (p.charAt(dupIndex) == separatorChar)
|
||||||
|
{
|
||||||
|
dupIndex++;
|
||||||
|
if (dupIndex == plen)
|
||||||
|
return newpath.toString();
|
||||||
|
}
|
||||||
|
newpath.append(separatorChar);
|
||||||
|
last = dupIndex;
|
||||||
|
dupIndex = p.indexOf(dupSeparator, last);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Again, ignore possible trailing separator.
|
||||||
|
int end;
|
||||||
|
if (plen > 1 && p.charAt(plen - 1) == separatorChar)
|
||||||
|
end = plen - 1;
|
||||||
|
else
|
||||||
|
end = plen;
|
||||||
|
newpath.append(p.substring(last, end));
|
||||||
|
|
||||||
|
return newpath.toString();
|
||||||
}
|
}
|
||||||
|
|
||||||
public File (String dirPath, String name)
|
public File (String dirPath, String name)
|
||||||
|
@ -88,13 +133,14 @@ public class File implements Serializable, Comparable
|
||||||
if (dirPath != null && dirPath.length() > 0)
|
if (dirPath != null && dirPath.length() > 0)
|
||||||
{
|
{
|
||||||
// Try to be smart about the number of separator characters.
|
// Try to be smart about the number of separator characters.
|
||||||
if (dirPath.charAt(dirPath.length() - 1) == separatorChar)
|
if (dirPath.charAt(dirPath.length() - 1) == separatorChar
|
||||||
path = dirPath + name;
|
|| name.length() == 0)
|
||||||
|
path = normalizePath(dirPath + name);
|
||||||
else
|
else
|
||||||
path = dirPath + separatorChar + name;
|
path = normalizePath(dirPath + separatorChar + name);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
path = name;
|
path = normalizePath(name);
|
||||||
}
|
}
|
||||||
|
|
||||||
public File (File dir, String name)
|
public File (File dir, String name)
|
||||||
|
@ -439,6 +485,7 @@ public class File implements Serializable, Comparable
|
||||||
static final String tmpdir = System.getProperty("java.io.tmpdir");
|
static final String tmpdir = System.getProperty("java.io.tmpdir");
|
||||||
static int maxPathLen;
|
static int maxPathLen;
|
||||||
static boolean caseSensitive;
|
static boolean caseSensitive;
|
||||||
|
static String dupSeparator = separator + separator;
|
||||||
|
|
||||||
static
|
static
|
||||||
{
|
{
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue