* proper handling of build units and implicit units for shared libs

git-svn-id: trunk@2256 -
This commit is contained in:
florian 2006-01-11 21:38:52 +00:00
parent 7dbeab548d
commit dfcf0cb9d7
2 changed files with 176 additions and 176 deletions

View File

@ -1,7 +1,7 @@
{$ifdef Delphi}
const fpcmakeini : array[0..209] of string[240]=(
const fpcmakeini : array[0..210] of string[240]=(
{$else Delphi}
const fpcmakeini : array[0..209,1..240] of char=(
const fpcmakeini : array[0..210,1..240] of char=(
{$endif Delphi}
';'#010+
'; Templates used by fpcmake to create a Makefile from Makefile.fpc'#010+
@ -1715,128 +1715,131 @@ const fpcmakeini : array[0..209,1..240] of char=(
#010+
'# Default sharedlib units are all unit objects'#010+
'ifndef SHARED_LIBUNITS'#010+
'SHARED_LIBUNITS:=$(TARGET_UNITS)'#010+
'SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMP','LICITUNITS)'#010+
'override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_L'+
'IBUNITS))'#010+
'endif'#010+
#010+
'fpc_s','hared:'#010+
'fpc_shared:'#010+
'ifdef HASSHAREDLIB'#010+
' $(MAKE) all CREATESHARED=1 LINKSHARED=1 CREATESMART=1'#010+
'ifneq ($(SHARED_BUILD),n)'#010+
' $(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -'+
'o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR)'#010+
' $(PPUMOVE) -q ','$(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR)'+
' -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR)'#010+
'endif'#010+
'el','se'#010+
'else'#010+
' @$(ECHO) Shared Libraries not supported'#010+
'endif'#010+
#010+
'fpc_shared_install:'#010+
'ifneq ($(SHARED_BUILD),n)'#010+
'ifneq ($(SHARED_LIBUNITS),)'#010+
' $(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INST'+
'ALL_SHAREDDIR)'#010+
' ',' $(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(IN'+
'STALL_SHAREDDIR)'#010+
'endif'#010+
'endif'#010+
#010+
'[installru','les]'#010+
'[installrules]'#010+
'#####################################################################'#010+
'# Install rules'#010+
'#####################################################################'#010+
'#############################################','#######################'+
'#'#010+
#010+
'.PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall'#010+
#010+
'ifdef INSTALL_UNITS'#010,
'ifdef INSTALL_UNITS'#010+
'override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS))'#010+
'endif'#010+
#010+
'ifdef INSTALL_BUILDUNIT'#010+
'override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$'+
'(INSTALLPPUFILES))'#010+
'override INSTALLPPUFILES:=$(filter-out ','$(INSTALL_BUILDUNIT)$(PPUEXT)'+
',$(INSTALLPPUFILES))'#010+
'endif'#010+
#010+
'ifdef INSTALLPPUFILES'#010+
'override INSTALLPPULINKFI','LES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPU'+
'FILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEX'+
'T),$(INSTALLPPUFILES)))'#010+
'override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFI'+
'LES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT)'+
',$(INSTALLPPUFILES)))',#010+
'ifneq ($(UNITTARGETDIRPREFIX),)'#010+
'override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(notdir '+
'$','(INSTALLPPUFILES)))'#010+
'$(INSTALLPPUFILES)))'#010+
'override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPR'+
'EFIX),$(notdir $(INSTALLPPULINKFILES))))'#010+
'endif'#010+
'endif',#010+
'# Implicitly install Package.fpc'#010+
'override INSTALL_CREATEPACKAGEFPC=1'#010+
'endif'#010+
#010+
'ifdef INSTALLEXEFILES'#010+
'ifneq',' ($(TARGETDIRPREFIX),)'#010+
'ifneq ($(TARGETDIRPREFIX),)'#010+
'override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(notdir $(IN'+
'STALLEXEFILES)))'#010+
'endif'#010+
'endif'#010+
#010+
'fpc_install: all $(INSTALLTARGET)'#010+
'fpc_install: ','all $(INSTALLTARGET)'#010+
'ifdef INSTALLEXEFILES'#010+
' $(MKDIR) $(INSTALL_BINDIR)'#010+
'# Compress the exes if upx',' is defined'#010+
'# Compress the exes if upx is defined'#010+
'ifdef UPXPROG'#010+
' -$(UPXPROG) $(INSTALLEXEFILES)'#010+
'endif'#010+
' $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR)'#010+
'endif'#010+
'endif'#010,
'ifdef INSTALL_CREATEPACKAGEFPC'#010+
'ifdef FPCMAKE'#010+
'# If the fpcpackage variable is set then create and install',' Package.'+
'fpc,'#010+
'# If the fpcpackage variable is set then create and install Package.fp'+
'c,'#010+
'# a safety check is done if Makefile.fpc is available'#010+
'ifdef PACKAGE_VERSION'#010+
'ifneq ($(wildcard Makefile.fpc),)'#010+
' $(FPCMAKE) -p -T$(CPU_TARGET)-$(OS_TARGET) Makefile.fpc'#010+
' $(FP','CMAKE) -p -T$(CPU_TARGET)-$(OS_TARGET) Makefile.fpc'#010+
' $(MKDIR) $(INSTALL_UNITDIR)'#010+
' $(INSTAL','L) Package.fpc $(INSTALL_UNITDIR)'#010+
' $(INSTALL) Package.fpc $(INSTALL_UNITDIR)'#010+
'endif'#010+
'endif'#010+
'endif'#010+
'endif'#010+
'ifdef INSTALLPPUFILES'#010+
' $(MKDIR) $(INSTALL_UNITDIR)'#010+
' $(INSTALL) $(INSTALLPPUFILES) $(INSTALL_UNITDIR)'#010+
' $(INSTALL) $','(INSTALLPPUFILES) $(INSTALL_UNITDIR)'#010+
'ifneq ($(INSTALLPPULINKFILES),)'#010+
' $(INSTALL) $(INSTALLPPULINK','FILES) $(INSTALL_UNITDIR)'#010+
' $(INSTALL) $(INSTALLPPULINKFILES) $(INSTALL_UNITDIR)'#010+
'endif'#010+
'ifneq ($(wildcard $(LIB_FULLNAME)),)'#010+
' $(MKDIR) $(INSTALL_LIBDIR)'#010+
' $(INSTALL) $(LIB_FULLNAME) $(INSTALL_LIBDIR)'#010+
' $(INSTALL) $(LIB_FULLNAM','E) $(INSTALL_LIBDIR)'#010+
'ifdef inUnix'#010+
' ln -sf $(LIB_FULLNAME) $(INSTALL_LIBDIR)/$(LIB_NAME)'#010+
'endif'#010+
'end','if'#010+
'endif'#010+
'endif'#010+
'ifdef INSTALL_FILES'#010+
' $(MKDIR) $(INSTALL_DATADIR)'#010+
' $(INSTALL) $(INSTALL_FILES) $(INSTALL_DATADIR)'#010+
'endif'#010+
#010+
'fpc_sourceinstall: distclean'#010+
'fpc_sourc','einstall: distclean'#010+
' $(MKDIR) $(INSTALL_SOURCEDIR)'#010+
' $(COPYTREE) $(BASEDIR)/* $(INSTALL_SOU','RCEDIR)'#010+
' $(COPYTREE) $(BASEDIR)/* $(INSTALL_SOURCEDIR)'#010+
#010+
'fpc_exampleinstall: $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS))'#010+
'ifdef HASEXAMPLES'#010+
' $(MKDIR) $(INSTALL_EXAMPLEDIR)'#010+
'endif'#010+
'endi','f'#010+
'ifdef EXAMPLESOURCEFILES'#010+
' $(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR)'#010+
'endif'#010+
'ifdef TARGE','T_EXAMPLEDIRS'#010+
'ifdef TARGET_EXAMPLEDIRS'#010+
' $(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EX'+
'AMPLEDIR)'#010+
'endif'#010+
#010+
'[distinstallrules]'#010+
'#####################################################################'#010+
'# Dist Install'#010+
'###################################','#################################'+
'################','####################################################'+
'#'#010+
'# Dist Install'#010+
'#####################################################################'#010+
#010+
'.PHONY: fpc_distinstall'#010+
#010+
@ -1844,17 +1847,17 @@ const fpcmakeini : array[0..209,1..240] of char=(
#010+
#010+
'[zipinstallrules]'#010+
'#####################################################################'#010+
'# Zip'#010+
'###########################################','#########################'+
'###############','#####################################################'+
'#'#010+
'# Zip'#010+
'#####################################################################'#010+
#010+
'.PHONY: fpc_zipinstall fpc_zipsourceinstall fpc_zipexampleinstall'#010+
#010+
'# Temporary path to pack a file, can only use a single deep'#010+
'# Temporary path to pack a file, can only',' use a single deep'#010+
'# subdir, because the deltree can'#039't see the whole tree to remove'#010+
'ifndef PACKDIR'#010+
'ifnde','f inUnix'#010+
'ifndef inUnix'#010+
'PACKDIR=$(BASEDIR)/../fpc-pack'#010+
'else'#010+
'PACKDIR=/tmp/fpc-pack'#010+
@ -1862,7 +1865,7 @@ const fpcmakeini : array[0..209,1..240] of char=(
'endif'#010+
#010+
'# Maybe create default zipname from packagename'#010+
'ifndef ZIPNAME'#010+
'ifndef Z','IPNAME'#010+
'ifdef DIST_ZIPNAME'#010+
'ZIPNAME=$(DIST_ZIPNAME)'#010+
'else'#010+
@ -1870,14 +1873,14 @@ const fpcmakeini : array[0..209,1..240] of char=(
'endif'#010+
'endif'#010+
#010+
'ifndef FULLZ','IPNAME'#010+
'ifndef FULLZIPNAME'#010+
'FULLZIPNAME=$(ZIPCROSSPREFIX)$(ZIPPREFIX)$(ZIPNAME)$(ZIPSUFFIX)'#010+
'endif'#010+
#010+
'# ZipTarget'#010+
'ifndef ZIPTARGET'#010+
'ifdef DIST_ZIPTARGET'#010+
'ZIPTARGET=DIST_ZIPTARGET'#010+
'ZIPTARGE','T=DIST_ZIPTARGET'#010+
'else'#010+
'ZIPTARGET=install'#010+
'endif'#010+
@ -1885,7 +1888,7 @@ const fpcmakeini : array[0..209,1..240] of char=(
#010+
'# Use tar by default under linux'#010+
'ifndef USEZIP'#010+
'ifde','f inUnix'#010+
'ifdef inUnix'#010+
'USETAR=1'#010+
'endif'#010+
'endif'#010+
@ -1895,82 +1898,80 @@ const fpcmakeini : array[0..209,1..240] of char=(
'USEZIPWRAPPER=1'#010+
'endif'#010+
#010+
'# We need to be able to run in the current OS so fix'#010+
'# We need to be able to r','un in the current OS so fix'#010+
'# the path separator'#010+
'ifdef USEZIPWRAPPER'#010+
'ZIPPATHSEP=$(PATHSEP)'#010+
'ZIPWRAPPER=$(','subst /,$(PATHSEP),$(DIST_DESTDIR)/fpczip$(SRCBATCHEXT)'+
')'#010+
'ZIPWRAPPER=$(subst /,$(PATHSEP),$(DIST_DESTDIR)/fpczip$(SRCBATCHEXT))'#010+
'else'#010+
'ZIPPATHSEP=/'#010+
'endif'#010+
#010+
'# Create commands to create the zip/tar file'#010+
'ZIPCMD_CDPACK:=cd $(subst /,$(ZIPPATHSEP),$(PACKDIR))'#010+
'ZIPCMD_CD','PACK:=cd $(subst /,$(ZIPPATHSEP),$(PACKDIR))'#010+
'ZIPCMD_CDBASE:=cd $(subst /,$(ZIPPATHSEP),$(BASEDIR))'#010+
'ifdef',' USETAR'#010+
'ifdef USETAR'#010+
'ZIPDESTFILE:=$(DIST_DESTDIR)/$(FULLZIPNAME)$(TAREXT)'#010+
'ZIPCMD_ZIP:=$(TARPROG) cf$(TAROPT) $(ZIPDESTFILE) *'#010+
'else'#010+
'ZIPDESTFILE:=$(DIST_DESTDIR)/$(FULLZIPNAME)$(ZIPEXT)'#010+
'ZIPCMD_ZIP:=$(subst /,$(ZIPPATHSEP),$(ZIPPROG)) -Dr $(ZIPOPT) $(ZIPDE',
'STFILE) *'#010+
'ZIPDESTFILE:=$(DIS','T_DESTDIR)/$(FULLZIPNAME)$(ZIPEXT)'#010+
'ZIPCMD_ZIP:=$(subst /,$(ZIPPATHSEP),$(ZIPPROG)) -Dr $(ZIPOPT) $(ZIPDES'+
'TFILE) *'#010+
'endif'#010+
#010+
'fpc_zipinstall:'#010+
' $(MAKE) $(ZIPTARGET) INSTALL_PREFIX=$(PACKDIR) ZIPINSTALL=1'#010+
' $(MKDIR) $(DIST_DESTDIR)'#010+
' $(DEL) $(ZIPDESTFILE)'#010+
' ',' $(DEL) $(ZIPDESTFILE)'#010+
'ifdef USEZIPWRAPPER'#010+
'# Handle gecho separate as we need to espace \ with \\'#010+
'i','fneq ($(ECHOREDIR),echo)'#010+
'ifneq ($(ECHOREDIR),echo)'#010+
' $(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDPACK))" > $(ZIPWRAPPE'+
'R)'#010+
' $(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_ZIP))" >> $(ZIPWRAPPER)'+
#010+
' $(ECHOREDIR) -e "$(subst \,\\,','$(ZIPCMD_ZIP))" >> $(ZIPWRAPPE'+
'R)'#010+
' $(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDBASE))" >> $(ZIPWRAPP'+
'E','R)'#010+
'ER)'#010+
'else'#010+
' echo $(ZIPCMD_CDPACK) > $(ZIPWRAPPER)'#010+
' echo $(ZIPCMD_ZIP) >> $(ZIPWRAPPER)'#010+
' echo $(ZIPCMD_CDBASE) >> $(ZIPWRAPPER)'#010+
' echo $(ZIPCMD_CDBASE) >> $(ZIP','WRAPPER)'#010+
'endif'#010+
'ifdef inUnix'#010+
' /bin/sh $(ZIPWRAPPER)'#010+
'else'#010+
' $(ZIPWRAPPER)'#010+
'endif'#010+
' $(DEL',') $(ZIPWRAPPER)'#010+
' $(DEL) $(ZIPWRAPPER)'#010+
'else'#010+
' $(ZIPCMD_CDPACK) ; $(ZIPCMD_ZIP) ; $(ZIPCMD_CDBASE)'#010+
'endif'#010+
' $(DELTREE) $(PACKDIR)'#010+
#010+
'fpc_zipsourceinstall:'#010+
'fpc_zipsourceinsta','ll:'#010+
' $(MAKE) fpc_zipinstall ZIPTARGET=sourceinstall ZIPSUFFIX=$(ZIP'+
'SOURCESUFFIX)'#010+
#010+
'fpc_zipexamplei','nstall:'#010+
'fpc_zipexampleinstall:'#010+
'ifdef HASEXAMPLES'#010+
' $(MAKE) fpc_zipinstall ZIPTARGET=exampleinstall ZIPSUFFIX=$(ZI'+
'PEXAMPLESUFFIX)'#010+
'endif'#010+
#010+
'fpc_zipdistinstall:'#010+
'fpc_zipdistinstal','l:'#010+
' $(MAKE) fpc_zipinstall ZIPTARGET=distinstall'#010+
#010+
#010+
'[cleanrules]'#010+
'#################################','###################################'+
'#'#010+
'#####################################################################'#010+
'# Clean rules'#010+
'#####################################################################'#010+
#010+
'.PHONY: fpc_clean fpc_cleanall fpc_distclean'#010+
'.PHONY: fpc_cl','ean fpc_cleanall fpc_distclean'#010+
#010+
'ifdef EXEFILES'#010+
'override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(','CLEANEXEFIL'+
'ES))'#010+
'override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES'+
'))'#010+
'endif'#010+
#010+
'ifdef CLEAN_UNITS'#010+
@ -1978,238 +1979,237 @@ const fpcmakeini : array[0..209,1..240] of char=(
'endif'#010+
#010+
'ifdef CLEANPPUFILES'#010+
'override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)'+
') $(addprefix $(STATICLIBPREFIX),$(subst',' $(PPUEXT),$(STATICLIBEXT),$'+
'overri','de CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILE'+
'S)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$'+
'(CLEANPPUFILES)))'#010+
'ifdef DEBUGSYMEXT'#010+
'override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPP'+
'UFILES))'#010+
'UF','ILES))'#010+
'endif'#010+
'override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUF'+
'ILES))'#010+
'override CLEAN','PPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPR'+
'EFIX),$(CLEANPPULINKFILES)))'#010+
'override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREF'+
'IX),$(CLEANPPULINKFILES)))'#010+
'endif'#010+
#010+
'fpc_clean: $(CLEANTARGET)'#010+
'ifdef CLEANEXEFILES'#010+
'ifdef CLEANEXEFILES'#010,
' -$(DEL) $(CLEANEXEFILES)'#010+
'endif'#010+
'ifdef CLEANPPUFILES'#010+
' -$(DEL) $(CLEANPPUFILES)'#010+
'endif'#010+
'ifneq ','($(CLEANPPULINKFILES),)'#010+
' -$(DEL) $(CLEANPPULINKFILES)'#010+
'endif'#010+
'ifdef CLEANRSTFILES'#010+
' -$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))'#010+
'endif'#010+
'ifdef CLEAN_FILES'#010+
' -$(DEL) $(CLEAN_FILES)'#010+
'endif'#010+
'ifdef LIB_NAME'#010+
' ','-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)'#010+
'endif'#010+
' -$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(F'+
'PCEXTFILE) $(REDIRFILE)'#010+
' -$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT)'#010+
#010+
'fpc_cleanall: $(CLEANTARGET)'#010+
'ifdef CLEANEXEFILES'#010+
' -','$(DEL) $(CLEANEXEFILES)'#010+
'endif'#010+
'ifdef COMPILER_UNITTARGETDIR'#010+
'ifdef CLEANPPUFILES'#010+
' -$(DEL) $(CLEANPPUFILES)'#010+
'endif'#010+
'ifneq ($(CLEANPPULINKFILES),)'#010+
' -$(DEL) $(CLEANPPULINKFILES)'#010+
'endif'#010+
'ifdef CLEANRSTFILES'#010+
' -$(DEL) $(addprefix $','(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))'+
' -$(DEL) $(addprefix $(UNITTARGETDIRPREFIX','),$(CLEANRSTFILES))'+
#010+
'endif'#010+
'ifdef CLEAN_FILES'#010+
' -$(DEL) $(CLEAN_FILES)'#010+
'endif'#010+
'ifdef LIB_NAME'#010+
' -$(DEL) $(LIB_NAME) $(LIB_FULLNAME)'#010+
'endif'#010+
' -$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(F'+
'PCEXTFILE) $(REDIRFILE)'#010,
' -$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT)'#010+
#010+
'fpc_cleanall: $(CLEANTARGET)'#010+
'ifdef CLEANEXEFILES'#010+
' -$(DEL) $(CLEANEXEFILES)'#010+
'endif'#010+
'ifdef COMPILER_UNITTARGETDIR'#010+
'ifdef CLEANPPUFILES'#010+
' -$(DEL) $(CLEANPPUFILES)'#010+
'endif'#010+
'ifneq ($(CLEANPPUL','INKFILES),)'#010+
' -$(DEL) $(CLEANPPULINKFILES)'#010+
'endif'#010+
'ifdef CLEANRSTFILES'#010+
' -$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))'#010+
'endif'#010+
'endif'#010+
' -$(DELTREE) units'#010+
' -$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIB'+
'EXT) *$(SHAREDLIBEXT) *$(PPLEXT)'#010+
' -$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) ','*$(STATICL'+
'IBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)'#010+
'ifneq ($(PPUEXT),.ppu)'#010+
' -$(DEL) *.o *.ppu *.a'#010+
'endif'#010,
'endif'#010+
' -$(DELTREE) *$(SMARTEXT)'#010+
' -$(DEL) fpcmade.* Package.fpc $(PPAS) script.res link.res $(FP'+
'CEXTFILE) $(REDIRFILE)'#010+
' -$(DEL) *_ppas$(BATCHEXT)'#010+
' -$','(DEL) *_ppas$(BATCHEXT)'#010+
'ifdef AOUTEXT'#010+
' -$(DEL) *$(AOUTEXT)'#010+
'endif'#010+
'ifdef DEBUGSYMEXT'#010+
' -$(DEL',') *$(DEBUGSYMEXT)'#010+
' -$(DEL) *$(DEBUGSYMEXT)'#010+
'endif'#010+
#010+
'fpc_distclean: cleanall'#010+
#010+
#010+
'[baseinforules]'#010+
'#####################################################################'#010+
'#####################################################################',
#010+
'# Base info rules'#010+
'#####################################################################'#010+
#010+
'.PHONY: fpc_ba','seinfo'#010+
'.PHONY: fpc_baseinfo'#010+
#010+
'override INFORULES+=fpc_baseinfo'#010+
#010+
'fpc_baseinfo:'#010+
' @$(ECHO)'#010+
' @$(ECHO) == Package info =='#010+
' @$(ECHO) Package Name..... $(PACKAGE_NAME)'#010+
' @$(ECHO) Package ','Name..... $(PACKAGE_NAME)'#010+
' @$(ECHO) Package Version.. $(PACKAGE_VERSION)'#010+
' @$(ECHO)'#010+
' ',' @$(ECHO) == Configuration info =='#010+
' @$(ECHO) == Configuration info =='#010+
' @$(ECHO)'#010+
' @$(ECHO) FPC.......... $(FPC)'#010+
' @$(ECHO) FPC Version.. $(FPC_VERSION)'#010+
' @$(ECHO) FPC Version.. $(FPC_VERSI','ON)'#010+
' @$(ECHO) Source CPU... $(CPU_SOURCE)'#010+
' @$(ECHO) Target CPU... $(CPU_TARGET)'#010+
' ','@$(ECHO) Source OS.... $(OS_SOURCE)'#010+
' @$(ECHO) Source OS.... $(OS_SOURCE)'#010+
' @$(ECHO) Target OS.... $(OS_TARGET)'#010+
' @$(ECHO) Full Source.. $(FULL_SOURCE)'#010+
' @$(ECHO) Full Target.. $(FULL_TARGET)'#010+
' ',' @$(ECHO) Full Target.. $(FULL_TARGET)'#010+
' @$(ECHO) SourceSuffix. $(SOURCESUFFIX)'#010+
' @$(ECHO)',' TargetSuffix. $(TARGETSUFFIX)'#010+
' @$(ECHO) TargetSuffix. $(TARGETSUFFIX)'#010+
' @$(ECHO)'#010+
' @$(ECHO) == Directory info =='#010+
' @$(ECHO)'#010+
' @$(ECHO) Required pkgs... $(REQUIRE_PACKAGES)'#010+
' @$(ECHO) Required pkgs','... $(REQUIRE_PACKAGES)'#010+
' @$(ECHO)'#010+
' @$(ECHO) Basedir......... $(BASEDIR)'#010+
' @$(ECHO) ',' FPCDir.......... $(FPCDIR)'#010+
' @$(ECHO) FPCDir.......... $(FPCDIR)'#010+
' @$(ECHO) CrossBinDir..... $(CROSSBINDIR)'#010+
' @$(ECHO) UnitsDir........ $(UNITSDIR)'#010+
' @$(ECHO) PackagesDir..... $(PACKAGESDIR)'#010+
' @$(','ECHO) PackagesDir..... $(PACKAGESDIR)'#010+
' @$(ECHO)'#010+
' @$(ECHO) GCC library..... $(GCCLIBDIR)'#010,
' @$(ECHO) GCC library..... $(GCCLIBDIR)'#010+
' @$(ECHO) Other library... $(OTHERLIBDIR)'#010+
' @$(ECHO)'#010+
' @$(ECHO) == Tools info =='#010+
' @$(ECHO)'#010+
' @$(ECHO) As........ $(AS)'#010+
' @$(ECHO) ',' As........ $(AS)'#010+
' @$(ECHO) Ld........ $(LD)'#010+
' @$(ECHO) Ar........ $(AR)'#010+
' @$(ECHO)',' Rc........ $(RC)'#010+
' @$(ECHO) Rc........ $(RC)'#010+
' @$(ECHO)'#010+
' @$(ECHO) Mv........ $(MVPROG)'#010+
' @$(ECHO) Cp........ $(CPPROG)'#010+
' @$(ECHO) Rm........ $(RMPROG)'#010+
' @$(ECHO) Rm..','...... $(RMPROG)'#010+
' @$(ECHO) GInstall.. $(GINSTALL)'#010+
' @$(ECHO) Echo...... $(ECHO)'#010+
' @','$(ECHO) Shell..... $(SHELL)'#010+
' @$(ECHO) Shell..... $(SHELL)'#010+
' @$(ECHO) Date...... $(DATE)'#010+
' @$(ECHO) FPCMake... $(FPCMAKE)'#010+
' @$(ECHO) PPUMove... $(PPUMOVE)'#010+
' @$(ECHO) PPUMove... $','(PPUMOVE)'#010+
' @$(ECHO) Upx....... $(UPXPROG)'#010+
' @$(ECHO) Zip....... $(ZIPPROG)'#010+
' @$(ECH','O)'#010+
' @$(ECHO)'#010+
' @$(ECHO) == Object info =='#010+
' @$(ECHO)'#010+
' @$(ECHO) Target Loaders........ $(TARGET_LOADERS)'#010+
' @$(ECHO) Target Units.......... $(TARGET_UNITS)'#010+
' @$(ECHO) Tar','get Units.......... $(TARGET_UNITS)'#010+
' @$(ECHO) Target Implicit Units. $(TARGET_IMPLICITUNITS)'#010+
' ',' @$(ECHO) Target Programs....... $(TARGET_PROGRAMS)'#010+
' @$(ECHO) Target Programs....... $(TARGET_PROGRAMS)'#010+
' @$(ECHO) Target Dirs........... $(TARGET_DIRS)'#010+
' @$(ECHO) Target Examples....... $(TARGET_EXAMPLES)'#010+
' @$(ECHO) Targe','t Examples....... $(TARGET_EXAMPLES)'#010+
' @$(ECHO) Target ExampleDirs.... $(TARGET_EXAMPLEDIRS)'#010+
' ',' @$(ECHO)'#010+
' @$(ECHO)'#010+
' @$(ECHO) Clean Units......... $(CLEAN_UNITS)'#010+
' @$(ECHO) Clean Files......... $(CLEAN_FILES)'#010+
' @$(ECHO)'#010+
' @$(ECHO',')'#010+
' @$(ECHO) Install Units....... $(INSTALL_UNITS)'#010+
' @$(ECHO) Install Files....... $(INSTA','LL_FILES)'#010+
' @$(ECHO) Install Files....... $(INSTALL_FILES)'#010+
' @$(ECHO)'#010+
' @$(ECHO) == Install info =='#010+
' @$(ECHO)'#010+
' @$(ECHO) DateStr.............. $(DATESTR)'#010+
' @$(ECHO) ZipName.............. $(ZIPNAME)'#010+
' ',' @$(ECHO) ZipName.............. $(ZIPNAME)'#010+
' @$(ECHO) ZipPrefix............ $(ZIPPREFIX)'#010+
' ',' @$(ECHO) ZipCrossPrefix....... $(ZIPCROSSPREFIX)'#010+
' @$(ECHO) ZipCrossPrefix....... $(ZIPCROSSPREFIX)'#010+
' @$(ECHO) ZipSuffix............ $(ZIPSUFFIX)'#010+
' @$(ECHO) FullZipName.......... $(FULLZIPNAME)'#010+
' @$(ECHO) FullZipName','.......... $(FULLZIPNAME)'#010+
' @$(ECHO) Install FPC Package.. $(INSTALL_FPCPACKAGE)'#010+
' @$(ECHO)',#010+
' @$(ECHO)'#010+
' @$(ECHO) Install base dir..... $(INSTALL_BASEDIR)'#010+
' @$(ECHO) Install binary dir... $(INSTALL_BINDIR)'#010+
' @$(ECHO) Install library dir.. $(INSTALL_LIBDIR)'#010+
' @$(ECHO) ','Install library dir.. $(INSTALL_LIBDIR)'#010+
' @$(ECHO) Install units dir.... $(INSTALL_UNITDIR)'#010+
' ',' @$(ECHO) Install source dir... $(INSTALL_SOURCEDIR)'#010+
' @$(ECHO) Install source dir... $(INSTALL_SOURCEDIR)'#010+
' @$(ECHO) Install doc dir...... $(INSTALL_DOCDIR)'#010+
' @$(ECHO) Install example dir.. $(INSTALL_EXAMPLEDIR)'#010+
' @$(ECHO) Inst','all example dir.. $(INSTALL_EXAMPLEDIR)'#010+
' @$(ECHO) Install data dir..... $(INSTALL_DATADIR)'#010+
' ',' @$(ECHO)'#010+
' @$(ECHO)'#010+
' @$(ECHO) Dist destination dir. $(DIST_DESTDIR)'#010+
' @$(ECHO) Dist zip name........ $(DIST_ZIPNAME)'#010+
' @$(ECHO)'#010+
' @$(E','CHO)'#010+
#010+
'[inforules]'#010+
'#####################################################################'#010+
'# Info rules'#010+
'###','#################################################################'+
'#'#010+
'#####################################################################'#010+
#010+
'.PHONY: fpc_info'#010+
#010+
'fpc_info: $(INFORULES)'#010+
#010+
'[makefilerules]'#010+
'#####################################################################'#010+
'# Rebuild Makefile'#010+
'#########################','###########################################'+
'##########','##########################################################'+
'#'#010+
'# Rebuild Makefile'#010+
'#####################################################################'#010+
#010+
'.PHONY: fpc_makefile fpc_makefiles fpc_makefile_sub1 fpc_makefile_sub2'+
' \'#010+
' fpc_makefile_dirs'#010+
' fpc_makef','ile_dirs'#010+
#010+
'fpc_makefile:'#010+
' $(FPCMAKE) -w -T$(OS_TARGET) Makefile.fpc'#010+
#010+
'fpc_makefile_sub1:'#010+
'ifdef TARG','ET_DIRS'#010+
'ifdef TARGET_DIRS'#010+
' $(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGE'+
'T_DIRS))'#010+
'endif'#010+
'ifdef TARGET_EXAMPLEDIRS'#010+
' $(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGE'+
'T_EXAMPLEDIRS))'#010+
' $(FPCMAKE)',' -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TAR'+
'GET_EXAMPLEDIRS))'#010+
'endif'#010+
#010+
'fpc_makefile_sub2: $(addsuffi','x _makefile_dirs,$(TARGET_DIRS) $(TARGE'+
'T_EXAMPLEDIRS))'#010+
'fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_'+
'EXAMPLEDIRS))'#010+
#010+
'fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2'#010+
#010+
'fpc_makefiles: fpc_makefile fpc_makefile_dirs'#010+
'fpc_makefiles: fpc_makef','ile fpc_makefile_dirs'#010+
#010+
'[localmakefile]'#010+
'#################################################################','###'+
'#'#010+
'#####################################################################'#010+
'# Local Makefile'#010+
'#####################################################################'#010+
#010+
'ifneq ($(wildcard fpcmake.loc),)'#010+
'include fpcmake.loc'#010+
'include fp','cmake.loc'#010+
'endif'#010+
#010+
#010+
'[userrules]'#010+
'#####################################################################'#010+
'# Us','ers rules'#010+
'# Users rules'#010+
'#####################################################################'#010+
#010+
'[lclrules]'#010+
'#####################################################################'#010+
'# LCL Rules'#010+
'##################################################################','##'+
'############################################','########################'+
'#'#010+
'# LCL Rules'#010+
'#####################################################################'#010+
#010+
'# LCL Platform'#010+
'ifndef LCL_PLATFORM'#010+
@ -2219,30 +2219,30 @@ const fpcmakeini : array[0..209,1..240] of char=(
'LCL_PLATFORM=gtk'#010+
'endif'#010+
'endif'#010+
'export LCL_PLATFORM'#010+
'export LCL_PLATFO','RM'#010+
#010+
'# Check if the specified LCLDIR is correct'#010+
'ifdef LCLDIR'#010+
'override LCLDIR:=$(subst \,/,$(LCLDIR))'#010+
'ifeq',' ($(wildcard $(LCLDIR)/units/$(LCL_PLATFORM)),)'#010+
'ifeq ($(wildcard $(LCLDIR)/units/$(LCL_PLATFORM)),)'#010+
'override LCLDIR=wrong'#010+
'endif'#010+
'else'#010+
'override LCLDIR=wrong'#010+
'endif'#010+
#010+
'# Check if the default LCLDIR is correct'#010+
'# Check if the default LCL','DIR is correct'#010+
'ifdef DEFAULT_LCLDIR'#010+
'override LCLDIR:=$(subst \,/,$(DEFAULT_LCLDIR))'#010+
'ifeq ($(wildcard $(L','CLDIR)/units/$(LCL_PLATFORM)),)'#010+
'ifeq ($(wildcard $(LCLDIR)/units/$(LCL_PLATFORM)),)'#010+
'override LCLDIR=wrong'#010+
'endif'#010+
'endif'#010+
#010+
'# Check for development version'#010+
'ifeq ($(LCLDIR),wrong)'#010+
'override LCLDIR=$(subst /units/$(LCL_PLATFORM),,$(firstword $(wildcard'+
' $(addsuffix /units/$(LCL_PLATFORM),$(BASEDIR)/l','cl $(BASEDIR)))))'#010+
'override LCLDI','R=$(subst /units/$(LCL_PLATFORM),,$(firstword $(wildca'+
'rd $(addsuffix /units/$(LCL_PLATFORM),$(BASEDIR)/lcl $(BASEDIR)))))'#010+
'ifeq ($(LCLDIR),)'#010+
'override LCLDIR=wrong'#010+
'endif'#010+
@ -2250,39 +2250,38 @@ const fpcmakeini : array[0..209,1..240] of char=(
#010+
'# Check for release version'#010+
'ifeq ($(LCLDIR),wrong)'#010+
'override LCLDIR=$(subst /units/$(LCL_PLATFORM),,$(firstword $(wildcard'+
' $(addsuffix /lib/lazarus/units/$(LCL_PLATFORM),','/usr/local /usr))))'#010+
'override LCLDI','R=$(subst /units/$(LCL_PLATFORM),,$(firstword $(wildca'+
'rd $(addsuffix /lib/lazarus/units/$(LCL_PLATFORM),/usr/local /usr))))'#010+
'ifeq ($(LCLDIR),)'#010+
'override LCLDIR=wrong'#010+
'endif'#010+
'endif'#010+
#010+
'# Generate dirs'#010+
'override LCLUNITDIR:=$(wildcard $(LCLDIR)/units/$(LCL_PLATFORM) $(LCLD'+
'IR)/units)'#010+
'override LCLCOMPONENTDIR:=$(wildcard $(LCLDIR)/.. $(LCLDIR)/../compone',
'override LCLUNITDIR:=$(wildcard $(LCLDIR)/units','/$(LCL_PLATFORM) $(LC'+
'LDIR)/units)'#010+
'override LCLCOMPONENTDIR:=$(wildcard $(LCLDIR)/.. $(LCLDIR)/../compone'+
'nts $(LCLDIR)/components)'#010+
'export LCLDIR LCLUNITDIR LCLCOMPONENTDIR'#010+
#010+
'# Add LCL dirs to paths'#010+
'override REQUIRE_PACKAGESDIR+=$(LCLCOMPONENTDIR)'#010+
'override REQUIRE_PACKAGESDIR+=$(LCLCOMPONENT','DIR)'#010+
'override COMPILER_UNITDIR+=$(LCLUNITDIR)'#010+
#010+
'[lclinforules]'#010+
'##########################################','##########################'+
'#'#010+
'#####################################################################'#010+
'# LCL Info rules'#010+
'#####################################################################'#010+
'override INFORULES+=lclinfo'#010+
'override INFORULES+=l','clinfo'#010+
#010+
'.PHONY: lclinfo'#010+
#010+
'lclinfo:'#010+
' @$(ECHO) == LCL info =='#010+
' @$(ECHO)'#010+
' @$(ECHO) Pl','atform............. $(LCL_PLATFORM)'#010+
' @$(ECHO) Platform............. $(LCL_PLATFORM)'#010+
' @$(ECHO) LCLDIR............... $(LCLDIR)'#010+
' @$(ECHO) LCL Unit dir......... $(LCLUNITDIR)'#010+
' @$(ECHO) LCL Unit dir......... $(LCLUNITD','IR)'#010+
' @$(ECHO) LCL Component dir.... $(LCLCOMPONENTDIR)'#010+
' @$(ECHO)'#010
);

View File

@ -1655,7 +1655,8 @@ endif
# Default sharedlib units are all unit objects
ifndef SHARED_LIBUNITS
SHARED_LIBUNITS:=$(TARGET_UNITS)
SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS)
override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_LIBUNITS))
endif
fpc_shared: