Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
fpc-src / usr / share / fpcsrc / 3.0.0 / tests / tstunits / Makefile.fpc
Size: Mime:
#
#  Makefile.fpc for Free Pascal units, which participates in the tests
#

[target]

[install]
fpcpackage=y

[clean]
units = erroru popuperr ptest

[compiler]
targetdir=$(TARGETSUFFIX)

[default]
fpcdir=../..

[rules]
.NOTPARALLEL:
.PHONY: rtl extra fpcunit packages all clean distclean clean_ctest
.PHONY: cleanrtl distcleanrtl
.PHONY: cleanfpcunit distcleanfpcunit
.PHONY: cleanpackages distcleanpackages


TESTOPT:=-n -FE$(COMPILER_TARGETDIR) -T$(OS_TARGET) $(OPT)
ifeq ($(CPU_TARGET),armeb)
override TESTOPT+=-Cb
endif
ifneq ($(BINUTILSPREFIX),)
override TESTOPT+=-XP$(BINUTILSPREFIX) -Xc
endif
ifeq ($(OS_TARGET),msdos)
override TESTOPT+=-CX
endif
TESTCOMPILER:=$(FPC) $(TESTOPT)

ifdef CROSSCOMPILE
override CROSSOPT:=$(OPT)
override OPT=
endif

#############################
# RTL
#

DUMMYINSTALLDIR=$(BASEDIR)/tmp
INSTALLOPT=INSTALL_PREFIX=$(DUMMYINSTALLDIR) INSTALL_UNITDIR=$(BASEDIR)/$(COMPILER_TARGETDIR)

rtl-stamp.$(FULL_TARGET):
        $(MAKE) -C ../../rtl all 'OPT=$(OPT) -n' 'CROSSOPT=$(CROSSOPT)'
        $(MAKE) -C ../../rtl install $(INSTALLOPT) OPT= CROSSOPT=
        $(ECHO) Compiled > rtl-stamp.$(FULL_TARGET)

cleanrtl:
        $(DELTREE) $(COMPILER_TARGETDIR)
        $(DELTREE) $(DUMMYINSTALLDIR)
        -$(DEL) rtl-stamp.$(FULL_TARGET)

distcleanrtl: cleanrtl

rtl : rtl-stamp.$(FULL_TARGET)


#############################
# FPCUnit
#

DUMMYINSTALLDIR=$(BASEDIR)/tmp
INSTALLOPT=INSTALL_PREFIX=$(DUMMYINSTALLDIR) INSTALL_UNITDIR=$(BASEDIR)/$(COMPILER_TARGETDIR)
FPCUNITDIR=../../packages/fcl-fpcunit/src

fpcunit-stamp.$(FULL_TARGET):
ifneq ($(OS_TARGET),msdos)
 	$(TESTCOMPILER) -Fu$(BASEDIR)/$(COMPILER_TARGETDIR) $(FPCUNITDIR)/testutils
        $(TESTCOMPILER) -Fu$(BASEDIR)/$(COMPILER_TARGETDIR) $(FPCUNITDIR)/fpcunit
endif
        $(ECHO) Compiled > fpcunit-stamp.$(FULL_TARGET)

cleanfpcunit:
        $(DELTREE) $(COMPILER_TARGETDIR)
        $(DELTREE) $(DUMMYINSTALLDIR)
        -$(DEL) fpcunit-stamp.$(FULL_TARGET)

distcleanfpcunit: cleanfpcunit
	$(MAKE) -C $(FPCUNITDIR)/.. clean

fpcunit : fpcunit-stamp.$(FULL_TARGET)


#############################
# Packages
#

DUMMYINSTALLDIR=$(BASEDIR)/tmp
INSTALLOPT=INSTALL_PREFIX=$(DUMMYINSTALLDIR) INSTALL_UNITDIR=$(BASEDIR)/$(COMPILER_TARGETDIR)
PACKAGESDIR=../../packages

packages-stamp.$(FULL_TARGET):
        $(MAKE) -C ../../packages all 'OPT=$(OPT) -n' 'CROSSOPT=$(CROSSOPT)'
        $(MAKE) -C ../../packages install $(INSTALLOPT) OPT= CROSSOPT=
        $(ECHO) Compiled > packages-stamp.$(FULL_TARGET)

cleanpackages:
        $(DELTREE) $(COMPILER_TARGETDIR)
        $(DELTREE) $(DUMMYINSTALLDIR)
        -$(DEL) packages-stamp.$(FULL_TARGET)

distcleanpackages: cleanpackages

packages : packages-stamp.$(FULL_TARGET)


#############################
# Extra units
#


erroru$(PPUEXT) : erroru.pp
        $(TESTCOMPILER) erroru.pp

ptest$(PPUEXT) : ../test/cg/ptest.pp
ifneq ($(OS_TARGET),msdos)
        $(TESTCOMPILER) ../test/cg/ptest.pp
endif

popuperr$(PPUEXT) : popuperr.pp
        $(TESTCOMPILER) popuperr.pp

ifdef CCOMPILER
ctest: ../test/cg/obj/ctest.c
        $(CCOMPILER) -c -o ../test/cg/obj/$(OS_TARGET)/$(CPU_TARGET)/ctest.o ../test/cg/obj/ctest.c
else
ctest:
        @$(ECHO) "No C compiler found"
        @exit 1
endif


extra : erroru$(PPUEXT) ptest$(PPUEXT) popuperr$(PPUEXT)



#############################
# Main rules
#

ifdef QUICKTEST
all : rtl fpcunit extra
else
all : rtl fpcunit packages extra
endif

STAMPFILES=$(wildcard *stamp*)
TEMPDIRS=$(wildcard $(MAKEFILETARGETS) tmp)


clean : cleanrtl cleanall cleanfpcunit cleanpackages

distclean : clean distcleanrtl distcleanfpcunit distcleanpackages
	-$(DELTREE) $(TEMPDIRS)
	-$(DEL) $(STAMPFILES)

clean_ctest :
        -$(DEL) ../test/cg/obj/$(OS_TARGET)/$(CPU_TARGET)/ctest.o