lazarus/Makefile.fpc

89 lines
1.9 KiB
Makefile

#
# Makefile.fpc for Lazarus for Free Pascal
#
[package]
name=lazarus
version=0.7a
[require]
#rtl=1
#options=-gl
packages=fcl gtk regexpr
[target]
programs=lazarus
dirs=lcl components
#dirs=lcl components tools
exampledirs=examples
[compiler]
options=-gl
unitdir=. ./lcl/units ./lcl/units/$(LCLPLATFORM) ./components/units ./designer ./debugger
includedir=. ./include ./include/$(OS_TARGET)
[clean]
#units=$(basename $(wildcard *$(PPUEXT))) $(basename $(wildcard ./designer/*$(PPUEXT))) $(basename $(wildcard ./debugger/*$(PPUEXT)))
#files=$(wildcard ./designer/*$(OEXT))
[install]
basedir=lib/lazarus
#prefix=/usr
[dist]
destdir=$(BASEDIR)/dist
[prerules]
ifndef LCLPLATFORM
LCLPLATFORM=gtk
export LCLPLATFORM
endif
[rules]
.SUFFIXES: .rc .res
%.res: %.rc
windres -i $< -o $@
.PHONY: examples lcl components ide tools all win32 win32clean cleanall makefile makefiles
lcl: lcl_all
examples: lcl examples_all
components: lcl components_all
ide:
$(MAKE) --assume-new=lazarus.pp lazarus$(EXEEXT)
tools: lcl components tools_all
all: lcl components ide
cleanall:
$(MAKE) clean
$(DEL) $(wildcard ./*$(PPUEXT)) $(wildcard ./*$(OEXT))
$(DEL) $(wildcard ./debugger/*$(PPUEXT)) $(wildcard ./debugger/*$(OEXT))
$(DEL) $(wildcard ./designer/*$(PPUEXT)) $(wildcard ./designer/*$(OEXT))
win32:
$(MAKE) lazarus.res
$(MAKE) all LCLPLATFORM=win32 OPT=-dSUPPORTS_RESOURCES
win32clean:
$(MAKE) clean LCLPLATFORM=win32
$(DEL) $(wildcard *$(EXEEXT)) $(wildcard *.ow*) $(wildcard *.res) $(wildcard ./*$(PPUEXT)) $(wildcard ./debugger/*$(PPUEXT)) $(wildcard ./designer/*$(PPUEXT))
# MWE: moved to a more generic rule
#lazarus.res: lazarus.rc
# windres -i lazarus.rc -o lazarus.res
makefile: Makefile.fpc
-$(FPCMAKE) -w
makefiles: makefile
$(MAKE) -C components makefiles
$(MAKE) -C lcl makefiles
$(MAKE) -C tools makefiles