mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-06-01 20:22:45 +02:00
106 lines
2.2 KiB
Makefile
106 lines
2.2 KiB
Makefile
#
|
|
# Makefile.fpc for Free Pascal units, which participates in the tests
|
|
#
|
|
|
|
[target]
|
|
|
|
[install]
|
|
fpcpackage=y
|
|
|
|
[clean]
|
|
units = erroru popuperr ptest
|
|
|
|
[compiler]
|
|
targetdir=$(FULL_TARGET)
|
|
|
|
[default]
|
|
fpcdir=../..
|
|
|
|
[rules]
|
|
.PHONY: rtl extra fpcunit all clean cleanrtl clean_ctest
|
|
|
|
#############################
|
|
# RTL
|
|
#
|
|
|
|
DUMMYINSTALLDIR=$(BASEDIR)/tmp
|
|
INSTALLOPT=INSTALL_PREFIX=$(DUMMYINSTALLDIR) INSTALL_UNITDIR=$(BASEDIR)/$(COMPILER_TARGETDIR)
|
|
|
|
rtl-stamp.$(FULL_TARGET):
|
|
$(MAKE) -C ../../rtl all 'OPT=$(OPT) -n'
|
|
$(MAKE) -C ../../rtl install $(INSTALLOPT)
|
|
$(ECHO) Compiled > rtl-stamp.$(FULL_TARGET)
|
|
|
|
cleanrtl:
|
|
$(DELTREE) $(COMPILER_TARGETDIR)
|
|
$(DELTREE) $(DUMMYINSTALLDIR)
|
|
-$(DEL) rtl-stamp.$(FULL_TARGET)
|
|
|
|
rtl : rtl-stamp.$(FULL_TARGET)
|
|
|
|
|
|
#############################
|
|
# RTL
|
|
#
|
|
|
|
DUMMYINSTALLDIR=$(BASEDIR)/tmp
|
|
INSTALLOPT=INSTALL_PREFIX=$(DUMMYINSTALLDIR) INSTALL_UNITDIR=$(BASEDIR)/$(COMPILER_TARGETDIR)
|
|
|
|
fpcunit-stamp.$(FULL_TARGET):
|
|
$(TESTCOMPILER) -Fu$(BASEDIR)/$(COMPILER_TARGETDIR) ../../fcl/inc/testutils
|
|
$(TESTCOMPILER) -Fu$(BASEDIR)/$(COMPILER_TARGETDIR) ../../fcl/inc/fpcunit
|
|
$(ECHO) Compiled > fpcunit-stamp.$(FULL_TARGET)
|
|
|
|
cleanfpcunit:
|
|
$(DELTREE) $(COMPILER_TARGETDIR)
|
|
$(DELTREE) $(DUMMYINSTALLDIR)
|
|
-$(DEL) fpcunit-stamp.$(FULL_TARGET)
|
|
|
|
fpcunit : fpcunit-stamp.$(FULL_TARGET)
|
|
|
|
|
|
#############################
|
|
# Extra units
|
|
#
|
|
|
|
|
|
TESTOPT=-n -FE$(COMPILER_TARGETDIR) -T$(OS_TARGET) $(OPT)
|
|
ifneq ($(BINUTILSPREFIX),)
|
|
override TESTOPT+=-XP$(BINUTILSPREFIX) -Xc
|
|
endif
|
|
TESTCOMPILER=$(FPC) $(TESTOPT)
|
|
|
|
erroru$(PPUEXT) : erroru.pp
|
|
$(TESTCOMPILER) erroru.pp
|
|
|
|
ptest$(PPUEXT) : ../test/cg/ptest.pp
|
|
$(TESTCOMPILER) ../test/cg/ptest.pp
|
|
|
|
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
|
|
#
|
|
|
|
all : rtl fpcunit extra
|
|
|
|
clean : cleanrtl cleanall cleanfpcunit
|
|
|
|
clean_ctest :
|
|
-$(DEL) ../test/cg/obj/$(OS_TARGET)/$(CPU_TARGET)/ctest.o
|