diff --git a/rtl/java/Makefile b/rtl/java/Makefile index 50dc34d176..8e387613ee 100644 --- a/rtl/java/Makefile +++ b/rtl/java/Makefile @@ -2197,13 +2197,15 @@ SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES)) SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS) $(SYSTEMUNIT)$(PPUEXT) : $(SYSTEMUNIT).pp $(SYSDEPS) $(COMPILER) -Us -Sg $(SYSTEMUNIT).pp $(REDIR) -uuchar$(PPUEXT): $(SYSTEMUNIT)$(PPUEXT) $(INC)/uuchar.pp -objpas$(PPUEXT): objpas.pp +uuchar$(PPUEXT) : $(SYSTEMUNIT)$(PPUEXT) $(INC)/uuchar.pp + $(COMPILER) $(INC)/uuchar.pp $(REDIR) +objpas$(PPUEXT) : objpas.pp $(COMPILER) objpas.pp $(REDIR) strings$(PPUEXT) : $(INC)/strings.pp $(INC)/stringsi.inc \ $(PROCINC)/strings.inc $(PROCINC)/stringss.inc \ $(SYSTEMUNIT)$(PPUEXT) -jdk15$(PPUEXT) : $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) jdk15.inc jdk15.pas + $(COMPILER) $(INC)/strings.pp $(REDIR) +jdk15$(PPUEXT) : $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) jdk15.inc jdk15.pas dos$(PPUEXT) : dos.pp $(INC)/filerec.inc $(INC)/textrec.inc strings$(PPUEXT) \ $(SYSTEMUNIT)$(PPUEXT) objects$(PPUEXT) : $(INC)/objects.pp dos$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) diff --git a/rtl/java/Makefile.fpc b/rtl/java/Makefile.fpc index 41793cf44b..c561fe0f2f 100644 --- a/rtl/java/Makefile.fpc +++ b/rtl/java/Makefile.fpc @@ -84,16 +84,18 @@ SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS) $(SYSTEMUNIT)$(PPUEXT) : $(SYSTEMUNIT).pp $(SYSDEPS) $(COMPILER) -Us -Sg $(SYSTEMUNIT).pp $(REDIR) -uuchar$(PPUEXT): $(SYSTEMUNIT)$(PPUEXT) $(INC)/uuchar.pp +uuchar$(PPUEXT) : $(SYSTEMUNIT)$(PPUEXT) $(INC)/uuchar.pp + $(COMPILER) $(INC)/uuchar.pp $(REDIR) -objpas$(PPUEXT): objpas.pp +objpas$(PPUEXT) : objpas.pp $(COMPILER) objpas.pp $(REDIR) strings$(PPUEXT) : $(INC)/strings.pp $(INC)/stringsi.inc \ $(PROCINC)/strings.inc $(PROCINC)/stringss.inc \ $(SYSTEMUNIT)$(PPUEXT) + $(COMPILER) $(INC)/strings.pp $(REDIR) -jdk15$(PPUEXT) : $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) jdk15.inc jdk15.pas +jdk15$(PPUEXT) : $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) jdk15.inc jdk15.pas # # System Dependent Units diff --git a/rtl/unix/sysfile.inc b/rtl/unix/sysfile.inc index 43dc57813a..f9f0c1583b 100644 --- a/rtl/unix/sysfile.inc +++ b/rtl/unix/sysfile.inc @@ -20,6 +20,8 @@ Begin repeat res:=Fpclose(cint(Handle)); until (res<>-1) or (geterrno<>ESysEINTR); + if res<>0 then + Errno2Inoutres; End; Procedure Do_Erase(p: pchar; pchangeable: boolean); diff --git a/rtl/win/sysfile.inc b/rtl/win/sysfile.inc index 6771554d52..1882a4e985 100644 --- a/rtl/win/sysfile.inc +++ b/rtl/win/sysfile.inc @@ -28,7 +28,8 @@ procedure do_close(h : thandle); begin if do_isdevice(h) then exit; - CloseHandle(h); + if CloseHandle(h)=0 then + Errno2InOutRes(GetLastError); end;