mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-16 12:19:30 +02:00
* make fullcycle added
This commit is contained in:
parent
387f05b00d
commit
03c85c0f75
@ -1,5 +1,5 @@
|
||||
#
|
||||
# Don't edit, this file is generated by FPCMake Version 1.1 [2002/08/01]
|
||||
# Don't edit, this file is generated by FPCMake Version 1.1 [2002/08/11]
|
||||
#
|
||||
default: all
|
||||
MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx netware openbsd wdosx
|
||||
@ -202,6 +202,7 @@ PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages/base $(FPCDIR)/packages/ext
|
||||
override PACKAGE_NAME=compiler
|
||||
override PACKAGE_VERSION=1.1
|
||||
unexport FPC_VERSION
|
||||
CYCLETARGETS=i386 powerpc
|
||||
ifdef ALPHA
|
||||
PPC_TARGET=alpha
|
||||
endif
|
||||
@ -225,6 +226,7 @@ ifndef PPC_OS
|
||||
PPC_OS=$(OS_TARGET)
|
||||
endif
|
||||
export PPC_OS
|
||||
CPU_UNITDIR=.
|
||||
UTILSDIR=../utils
|
||||
COMPILERUTILSDIR=utils
|
||||
ifndef FPCLANG
|
||||
@ -252,6 +254,9 @@ endif
|
||||
ifeq ($(PPC_TARGET),powerpc)
|
||||
CPUSUF=ppc
|
||||
endif
|
||||
ifeq ($(PPC_TARGET),x86_64)
|
||||
CPUSUF=x64
|
||||
endif
|
||||
NOCPUDEF=1
|
||||
ifeq ($(OS_TARGET),linux)
|
||||
ifneq ($(findstring 1.0.,$(FPC_VERSION)),)
|
||||
@ -289,7 +294,7 @@ override TARGET_DIRS+=utils
|
||||
override INSTALL_FPCPACKAGE=y
|
||||
override COMPILER_INCLUDEDIR+=$(PPC_TARGET)
|
||||
override COMPILER_UNITDIR+=$(PPC_TARGET) targets
|
||||
override COMPILER_TARGETDIR+=.
|
||||
override COMPILER_TARGETDIR+=$(CPU_UNITDIR)
|
||||
ifdef REQUIRE_UNITSDIR
|
||||
override UNITSDIR+=$(REQUIRE_UNITSDIR)
|
||||
endif
|
||||
@ -1426,13 +1431,13 @@ MAKEDEP=ppdep$(EXEEXT)
|
||||
MSG2INC=./msg2inc$(EXEEXT)
|
||||
.PHONY: alpha i386 m68k powerpc
|
||||
alpha:
|
||||
$(MAKE) ALPHA=1 all
|
||||
$(MAKE) PPC_TARGET=alpha CPU_UNITDIR=alpha exeonly
|
||||
i386:
|
||||
$(MAKE) I386=1 all
|
||||
$(MAKE) PPC_TARGET=i386 CPU_UNITDIR=i386 exeonly
|
||||
m68k:
|
||||
$(MAKE) M68K=1 all
|
||||
$(MAKE) PPC_TARGET=m68k CPU_UNITDIR=m68k exeonly
|
||||
powerpc:
|
||||
$(MAKE) POWERPC=1 all
|
||||
$(MAKE) PPC_TARGET=powerpc CPU_UNITDIR=powerpc exeonly
|
||||
.PHONY: all compiler echotime ppuclean execlean clean distclean
|
||||
all: $(EXENAME) $(addsuffix _all,$(TARGET_DIRS))
|
||||
compiler: $(EXENAME)
|
||||
@ -1456,8 +1461,11 @@ echotime:
|
||||
ppuclean:
|
||||
-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
|
||||
execlean :
|
||||
-$(DEL) fpc$(EXEEXT) ppc386$(EXEEXT) ppcaxp$(EXEEXT) ppc68k$(EXEEXT) ppcppc$(EXEEXT) $(EXENAME)
|
||||
clean : execlean fpc_cleanall $(addsuffix _clean,$(TARGET_DIRS))
|
||||
-$(DEL) ppc386$(EXEEXT) ppcaxp$(EXEEXT) ppc68k$(EXEEXT) ppcppc$(EXEEXT) $(EXENAME)
|
||||
$(addsuffix _clean,$(CYCLETARGETS)):
|
||||
-$(DEL) $(addprefix $(subst _clean,,$@)/,*$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT))
|
||||
-$(DEL) $(addprefix $(subst _clean,,$@)/,ppc386$(EXEEXT) ppcaxp$(EXEEXT) ppc68k$(EXEEXT) ppcppc$(EXEEXT) $(EXENAME))
|
||||
clean : execlean fpc_cleanall $(addsuffix _clean,$(TARGET_DIRS)) $(addsuffix _clean,$(CYCLETARGETS))
|
||||
distclean: execlean fpc_cleanall $(addsuffix _distclean,$(TARGET_DIRS))
|
||||
-$(DEL) $(PPCROSSNAME) $(TEMPNAME) $(TEMPNAME1) $(TEMPNAME2) $(TEMPNAME3) $(MSG2INC)
|
||||
$(MAKEDEP): $(UTILSDIR)/ppdep.pp
|
||||
@ -1468,19 +1476,21 @@ dependencies : $(MAKEDEP)
|
||||
ifdef USEDEPEND
|
||||
include depend
|
||||
endif
|
||||
.PHONY: exeonly msg
|
||||
$(MSG2INC): $(COMPILERUTILSDIR)/msg2inc.pp
|
||||
$(COMPILER) -FE. $(COMPILERUTILSDIR)/msg2inc.pp
|
||||
msgtxt.inc: $(MSGFILE)
|
||||
$(MAKE) $(MSG2INC)
|
||||
$(MSG2INC) $(MSGFILE) msg msg
|
||||
msg: msgtxt.inc
|
||||
exeonly: $(EXENAME)
|
||||
ifndef COMPLETE
|
||||
$(EXENAME) : $(wildcard *.pas) $(wildcard *.inc) msg \
|
||||
$(wildcard targets/*.pas) $(wilcard targets/*.inc) \
|
||||
$(wildcard $(PPC_TARGET)/*.pas) $(wildcard $(PPC_TARGET)/*.inc)
|
||||
$(COMPILER) pp.pas
|
||||
$(EXECPPAS)
|
||||
$(MOVE) $(PPEXENAME) $(EXENAME)
|
||||
$(MOVE) $(COMPILER_TARGETDIR)/$(PPEXENAME) $(EXENAME)
|
||||
else
|
||||
$(EXENAME) : $(wildcard *.pas) $(wildcard *.inc) msg \
|
||||
$(wildcard targets/*.pas) $(wilcard targets/*.inc) \
|
||||
@ -1491,7 +1501,7 @@ $(EXENAME) : $(wildcard *.pas) $(wildcard *.inc) msg \
|
||||
$(EXECPPAS)
|
||||
$(COMPILER) pp.pas
|
||||
$(EXECPPAS)
|
||||
$(MOVE) $(PPEXENAME) $(EXENAME)
|
||||
$(MOVE) $(COMPILER_TARGETDIR)/$(PPEXENAME) $(EXENAME)
|
||||
endif
|
||||
tokens.dat : $(wildcard *.pas) $(wildcard *.inc)
|
||||
$(COMPILER) tokendat.pas
|
||||
@ -1560,6 +1570,11 @@ cycledep:
|
||||
$(MAKE) cycle USEDEPEND=1
|
||||
cvstest:
|
||||
$(MAKE) cycle 'LOCALOPT=-n -Se' 'RTLOPTS=-n -Se'
|
||||
full: fullcycle
|
||||
fullcycle:
|
||||
$(MAKE) cycle
|
||||
$(MAKE) ppuclean
|
||||
$(MAKE) $(filter-out $(PPC_TARGET),$(CYCLETARGETS)) 'FPC=$(BASEDIR)/$(EXENAME)'
|
||||
htmldocs:
|
||||
$(PASDOC) -p -h -o html$(PATHSEP)$(PPC_TARGET) -d fpc -d gdb -d $(PPC_TARGET) -u $(PPC_TARGET) $(PPC_TARGET)$(PATHSEP)*.pas targets$(PATHSEP)*.pas *.pas
|
||||
.PHONY: quickinstall install installsym
|
||||
|
@ -10,7 +10,7 @@ version=1.1
|
||||
dirs=utils
|
||||
|
||||
[compiler]
|
||||
targetdir=.
|
||||
targetdir=$(CPU_UNITDIR)
|
||||
unitdir=$(PPC_TARGET) targets
|
||||
includedir=$(PPC_TARGET)
|
||||
|
||||
@ -29,6 +29,9 @@ fpcdir=..
|
||||
# Don't export version it can change after the first compile
|
||||
unexport FPC_VERSION
|
||||
|
||||
# Which platforms are ready for inclusion in the cycle
|
||||
CYCLETARGETS=i386 powerpc
|
||||
|
||||
# Allow ALPHA, POWERPC, M68K, I386 defines for target cpu
|
||||
ifdef ALPHA
|
||||
PPC_TARGET=alpha
|
||||
@ -60,6 +63,9 @@ PPC_OS=$(OS_TARGET)
|
||||
endif
|
||||
export PPC_OS
|
||||
|
||||
# Where to place the unit files.
|
||||
CPU_UNITDIR=.
|
||||
|
||||
# RTL
|
||||
UTILSDIR=../utils
|
||||
|
||||
@ -102,6 +108,9 @@ endif
|
||||
ifeq ($(PPC_TARGET),powerpc)
|
||||
CPUSUF=ppc
|
||||
endif
|
||||
ifeq ($(PPC_TARGET),x86_64)
|
||||
CPUSUF=x64
|
||||
endif
|
||||
|
||||
# Do not define the default -d$(CPU_TARGET) because that
|
||||
# will conflict with our -d$(PPC_TARGET)
|
||||
@ -205,16 +214,16 @@ MSG2INC=./msg2inc$(EXEEXT)
|
||||
.PHONY: alpha i386 m68k powerpc
|
||||
|
||||
alpha:
|
||||
$(MAKE) ALPHA=1 all
|
||||
$(MAKE) PPC_TARGET=alpha CPU_UNITDIR=alpha all
|
||||
|
||||
i386:
|
||||
$(MAKE) I386=1 all
|
||||
$(MAKE) PPC_TARGET=i386 CPU_UNITDIR=i386 all
|
||||
|
||||
m68k:
|
||||
$(MAKE) M68K=1 all
|
||||
$(MAKE) PPC_TARGET=m68k CPU_UNITDIR=m68k all
|
||||
|
||||
powerpc:
|
||||
$(MAKE) POWERPC=1 all
|
||||
$(MAKE) PPC_TARGET=powerpc CPU_UNITDIR=powerpc all
|
||||
|
||||
|
||||
#####################################################################
|
||||
@ -252,9 +261,13 @@ ppuclean:
|
||||
-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
|
||||
|
||||
execlean :
|
||||
-$(DEL) fpc$(EXEEXT) ppc386$(EXEEXT) ppcaxp$(EXEEXT) ppc68k$(EXEEXT) ppcppc$(EXEEXT) $(EXENAME)
|
||||
-$(DEL) ppc386$(EXEEXT) ppcaxp$(EXEEXT) ppc68k$(EXEEXT) ppcppc$(EXEEXT) $(EXENAME)
|
||||
|
||||
clean : execlean fpc_cleanall $(addsuffix _clean,$(TARGET_DIRS))
|
||||
$(addsuffix _clean,$(CYCLETARGETS)):
|
||||
-$(DEL) $(addprefix $(subst _clean,,$@)/,*$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT))
|
||||
-$(DEL) $(addprefix $(subst _clean,,$@)/,ppc386$(EXEEXT) ppcaxp$(EXEEXT) ppc68k$(EXEEXT) ppcppc$(EXEEXT) $(EXENAME))
|
||||
|
||||
clean : execlean fpc_cleanall $(addsuffix _clean,$(TARGET_DIRS)) $(addsuffix _clean,$(CYCLETARGETS))
|
||||
|
||||
distclean: execlean fpc_cleanall $(addsuffix _distclean,$(TARGET_DIRS))
|
||||
-$(DEL) $(PPCROSSNAME) $(TEMPNAME) $(TEMPNAME1) $(TEMPNAME2) $(TEMPNAME3) $(MSG2INC)
|
||||
@ -300,7 +313,7 @@ $(EXENAME) : $(wildcard *.pas) $(wildcard *.inc) msg \
|
||||
$(wildcard $(PPC_TARGET)/*.pas) $(wildcard $(PPC_TARGET)/*.inc)
|
||||
$(COMPILER) pp.pas
|
||||
$(EXECPPAS)
|
||||
$(MOVE) $(PPEXENAME) $(EXENAME)
|
||||
$(MOVE) $(COMPILER_TARGETDIR)/$(PPEXENAME) $(COMPILER_TARGETDIR)/$(EXENAME)
|
||||
else
|
||||
$(EXENAME) : $(wildcard *.pas) $(wildcard *.inc) msg \
|
||||
$(wildcard targets/*.pas) $(wilcard targets/*.inc) \
|
||||
@ -439,6 +452,20 @@ cycledep:
|
||||
cvstest:
|
||||
$(MAKE) cycle 'LOCALOPT=-n -Se' 'RTLOPTS=-n -Se'
|
||||
|
||||
##########################
|
||||
# Full cycle
|
||||
#
|
||||
# 1. build a compiler using cycle
|
||||
# 2. remove all .ppufiles
|
||||
# 3. build all supported cross compilers
|
||||
#
|
||||
|
||||
full: fullcycle
|
||||
|
||||
fullcycle:
|
||||
$(MAKE) cycle
|
||||
$(MAKE) ppuclean
|
||||
$(MAKE) $(CYCLETARGETS) 'FPC=$(BASEDIR)/$(EXENAME)'
|
||||
|
||||
#####################################################################
|
||||
# Docs
|
||||
|
Loading…
Reference in New Issue
Block a user