fpc/rtl/Makefile.fpc
1999-11-14 15:54:21 +00:00

206 lines
4.1 KiB
Makefile

#
# Makefile.fpc for Free Component Library
#
[defaults]
defaultrule=native
[sections]
none=1
[presettings]
# Set redir to YES if you want a log file to be kept.
ifndef REDIR
REDIR=NO
endif
# Set NODEBUG to YES if you DON'T want debugging
ifndef NODEBUG
NODEBUG=YES
endif
# Optional : Specify the place of the log file.
# default is 'log' in the source directory
ifndef REDIRFILE
REDIRFILE=
endif
# Optional: Error definitions file you want the compiler to use.
# !! If you specify a path, specify an absolute path. !!
ifndef ERRORFILE
ERRORFILE=
endif
#######################################################################
# Fix options
#######################################################################
# Check debugging.
ifneq ($(NODEBUG),YES)
override FPCOPT+=-g
endif
# Check error definitions file.
ifdef ERRORFILE
override FPCOPT+=-Fr$(ERRORFILE)
endif
# Check logfile.
ifeq ($(REDIR),YES)
ifndef inlinux
override FPC=redir -eo $(PP)
endif
# set the verbosity to max
override FPCOPT+=-va
ifdef REDIRFILE
override REDIR:= >> $(REDIRFILE)
else
override REDIR:= >> log
endif
else
override REDIR:=
endif
# Variables to export
export REDIR REDIRFILE ERRORFILE
[rules]
############################################################################
# RTLs
############################################################################
.PHONY: native rtls rtlgo32v1 rtlgo32v2 rtllinux rtlos2 rtlwin32 rtlamiga
native: rtl$(OS_SOURCE)
rtls: rtlgo32v1 rtlgo32v2 rtllinux rtlos2 rtlwin32
rtlgo32v1:
$(MAKE) -C go32v1
rtlgo32v2:
$(MAKE) -C go32v2
rtllinux:
$(MAKE) -C linux
rtlos2:
$(MAKE) -C os2
rtlwin32:
$(MAKE) -C win32
rtlamiga:
$(MAKE) -C amiga
############################################################################
# Libs
############################################################################
.PHONY: nativelibs libs libgo32v1 libgo32v2 liblinux libos2 libwin32
nativelibs : $(OS_SOURCE)libs
libs: go32v1libs go32v2libs linuxlibs os2libs win32libs
go32v1libs:
$(MAKE) -C go32v1 libs
go32v2libs:
$(MAKE) -C go32v2 libs
linuxlibs:
$(MAKE) -C linux libs
os2libs:
$(MAKE) -C os2 libs
win32libs:
$(MAKE) -C win32 libs
############################################################################
# Install
############################################################################
.PHONY: install native_install install_go32v1 install_go32v2 install_linux \
install_os2 install_win32
install: install_linux install_go32v1 install_go32v2 install_os2 install_win32
native_install: install_$(OS_SOURCE)
install_go32v1:
$(MAKE) -C go32v1 install
install_go32v2:
$(MAKE) -C go32v2 install
install_linux:
$(MAKE) -C linux install
install_os2:
$(MAKE) -C os2 install
install_win32:
$(MAKE) -C win32 install
############################################################################
# LibInstall
############################################################################
.PHONY: native_libinstall libinstall libinstall_go32v1 libinstall_go32v2 \
libinstall_linux libinstall_os2 libinstall_win32
libinstall: libinstall_linux libinstall_go32v1 libinstall_go32v2 \
libinstall_os2 libinstall_win32
native_libinstall: libinstall_$(OS_SOURCE)
libinstall_go32v1:
$(MAKE) -C go32v1 libinstall
libinstall_go32v2:
$(MAKE) -C go32v2 libinstall
libinstall_linux:
$(MAKE) -C linux libinstall
libinstall_os2:
$(MAKE) -C os2 libinstall
libinstall_win32:
$(MAKE) -C win32 libinstall
############################################################################
# Clean
############################################################################
.PHONY: clean native_clean clean_go32v1 clean_go32v2 clean_linux \
clean_os2 clean_win32
clean: clean_linux clean_go32v1 clean_go32v2 clean_os2 clean_win32
native_clean: clean_$(OS_SOURCE)
clean_go32v1:
$(MAKE) -C go32v1 clean
clean_go32v2:
$(MAKE) -C go32v2 clean
clean_linux:
$(MAKE) -C linux clean
clean_os2:
$(MAKE) -C os2 clean
clean_win32:
$(MAKE) -C win32 clean