* automatic support for package/target dir structure

This commit is contained in:
peter 1999-12-23 19:32:28 +00:00
parent c483ef813d
commit e8872314a6
3 changed files with 132 additions and 106 deletions

View File

@ -782,8 +782,8 @@ const fpcmakeini : array[0..105,1..240] of char=(
' -$(DEL) $(LOADEROFILES)'#010+ ' -$(DEL) $(LOADEROFILES)'#010+
#010+ #010+
'fpc_loaders_showinstall:'#010+ 'fpc_loaders_showinstall:'#010+
' @$(ECHO) $(a','ddprefix "\n"$(UNITINSTALLDIR)/,$(LOADEROFILES))'+ ' @$(ECHO) -e ','$(addprefix "\n"$(UNITINSTALLDIR)/,$(LOADEROFILE'+
#010+ 'S))'#010+
#010+ #010+
'fpc_loaders_install:'#010+ 'fpc_loaders_install:'#010+
' $(MKDIR) $(UNITINSTALLDIR)'#010+ ' $(MKDIR) $(UNITINSTALLDIR)'#010+
@ -791,7 +791,7 @@ const fpcmakeini : array[0..105,1..240] of char=(
#010+ #010+
#010+ #010+
'[unitrules]'#010+ '[unitrules]'#010+
'###################################################################','#'+ '################################################################','####'+
'#'#010+ '#'#010+
'# Units'#010+ '# Units'#010+
'#####################################################################'#010+ '#####################################################################'#010+
@ -802,7 +802,7 @@ const fpcmakeini : array[0..105,1..240] of char=(
#010+ #010+
'override UNITPPUFILES=$(addsuffix $(PPUEXT),$(UNITOBJECTS))'#010+ 'override UNITPPUFILES=$(addsuffix $(PPUEXT),$(UNITOBJECTS))'#010+
'override INSTALLPPUFILES+=$(UNITPPUFILES)'#010+ 'override INSTALLPPUFILES+=$(UNITPPUFILES)'#010+
'overri','de CLEANPPUFILES+=$(UNITPPUFILES)'#010+ 'ove','rride CLEANPPUFILES+=$(UNITPPUFILES)'#010+
#010+ #010+
'fpc_units: $(UNITPPUFILES)'#010+ 'fpc_units: $(UNITPPUFILES)'#010+
#010+ #010+
@ -813,7 +813,7 @@ const fpcmakeini : array[0..105,1..240] of char=(
'# Exes'#010+ '# Exes'#010+
'#####################################################################'#010+ '#####################################################################'#010+
#010+ #010+
'.PHONY: fpc_exes',#010+ '.PHONY: fpc_e','xes'#010+
#010+ #010+
'override EXEFILES=$(addsuffix $(EXEEXT),$(EXEOBJECTS))'#010+ 'override EXEFILES=$(addsuffix $(EXEEXT),$(EXEOBJECTS))'#010+
'override EXEOFILES=$(addsuffix $(OEXT),$(EXEOBJECTS))'#010+ 'override EXEOFILES=$(addsuffix $(OEXT),$(EXEOBJECTS))'#010+
@ -822,7 +822,7 @@ const fpcmakeini : array[0..105,1..240] of char=(
'override INSTALLEXEFILES+=$(EXEFILES)'#010+ 'override INSTALLEXEFILES+=$(EXEFILES)'#010+
'override CLEANEXEFILES+=$(EXEFILES) $(EXEOFILES)'#010+ 'override CLEANEXEFILES+=$(EXEFILES) $(EXEOFILES)'#010+
#010+ #010+
'fpc_exes: $','(EXEFILES)'#010+ 'fpc_exes',': $(EXEFILES)'#010+
#010+ #010+
#010+ #010+
'[examplerules]'#010+ '[examplerules]'#010+
@ -832,7 +832,7 @@ const fpcmakeini : array[0..105,1..240] of char=(
#010+ #010+
'.PHONY: fpc_examples fpc_test'#010+ '.PHONY: fpc_examples fpc_test'#010+
#010+ #010+
'override EXAMPLEFILES:=$(adds','uffix $(EXEEXT),$(EXAMPLEOBJECTS))'#010+ 'override EXAMPLEFILES:=$(a','ddsuffix $(EXEEXT),$(EXAMPLEOBJECTS))'#010+
'override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(EXAMPLEOBJECTS))'#010+ 'override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(EXAMPLEOBJECTS))'#010+
#010+ #010+
'override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES)'#010+ 'override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES)'#010+
@ -844,7 +844,7 @@ const fpcmakeini : array[0..105,1..240] of char=(
#010+ #010+
#010+ #010+
'[compilerules]'#010+ '[compilerules]'#010+
'###########','#########################################################'+ '########','############################################################'+
'#'#010+ '#'#010+
'# General compile rules'#010+ '# General compile rules'#010+
'#####################################################################'#010+ '#####################################################################'#010+
@ -854,7 +854,7 @@ const fpcmakeini : array[0..105,1..240] of char=(
'$(FPCMADE):'#010+ '$(FPCMADE):'#010+
' @$(ECHO) Compiled > $(FPCMADE)'#010+ ' @$(ECHO) Compiled > $(FPCMADE)'#010+
#010+ #010+
'fpc_all',': $(addsuffix _package,$(COMPILEPACKAGES)) \'#010+ 'fpc_','all: $(addsuffix _package,$(COMPILEPACKAGES)) \'#010+
' $(addsuffix _component,$(COMPILECOMPONENTS)) \'#010+ ' $(addsuffix _component,$(COMPILECOMPONENTS)) \'#010+
' $(ALLTARGET) $(FPCMADE)'#010+ ' $(ALLTARGET) $(FPCMADE)'#010+
#010+ #010+
@ -863,7 +863,7 @@ const fpcmakeini : array[0..105,1..240] of char=(
#010+ #010+
'# General compile rules, available for both possible PASEXT'#010+ '# General compile rules, available for both possible PASEXT'#010+
#010+ #010+
'.SUF','FIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp'#010+ '.','SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp'#010+
#010+ #010+
'%$(PPUEXT): %.pp'#010+ '%$(PPUEXT): %.pp'#010+
' $(COMPILER) $< $(REDIR)'#010+ ' $(COMPILER) $< $(REDIR)'#010+
@ -885,7 +885,7 @@ const fpcmakeini : array[0..105,1..240] of char=(
'[libraryrules]'#010+ '[libraryrules]'#010+
'#####################################################################'#010+ '#####################################################################'#010+
'# Library'#010+ '# Library'#010+
'#########################################################','###########'+ '######################################################','##############'+
'#'#010+ '#'#010+
#010+ #010+
'.PHONY: fpc_smart fpc_shared'#010+ '.PHONY: fpc_smart fpc_shared'#010+
@ -899,19 +899,19 @@ const fpcmakeini : array[0..105,1..240] of char=(
' $(MAKE) all SMARTLINK=1'#010+ ' $(MAKE) all SMARTLINK=1'#010+
#010+ #010+
'fpc_shared: all'#010+ 'fpc_shared: all'#010+
'ifdef inlinux'#010+ 'ifdef inlinux'#010,
'ifn','def LIBNAME'#010+ 'ifndef LIBNAME'#010+
' @$(ECHO) LIBNAME not set'#010+ ' @$(ECHO) "LIBNAME not set"'#010+
'else'#010+ 'else'#010+
' $(PPUMOVE) $(SHAREDLIBUNITOBJECTS) -o$(LIBNAME)'#010+ ' $(PPUMOVE) $(SHAREDLIBUNITOBJECTS) -o$(LIBNAME)'#010+
'endif'#010+ 'endif'#010+
'else'#010+ 'else'#010+
' @$(ECHO) Shared Libraries not supported'#010+ ' @$(ECHO) "Shared Libraries not supported"'#010+
'endif'#010+ 'endif'#010+
#010+ #010+
#010+ #010+
'[installrules]'#010+ '[installrules]'#010+
'####################################################','################'+ '#############################################','#######################'+
'#'#010+ '#'#010+
'# Install rules'#010+ '# Install rules'#010+
'#####################################################################'#010+ '#####################################################################'#010+
@ -919,8 +919,9 @@ const fpcmakeini : array[0..105,1..240] of char=(
'.PHONY: fpc_showinstall fpc_install'#010+ '.PHONY: fpc_showinstall fpc_install'#010+
#010+ #010+
'ifdef EXTRAINSTALLUNITS'#010+ 'ifdef EXTRAINSTALLUNITS'#010+
'override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(EXTRAINSTALLUNITS))'#010+ 'override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(EXTRAINSTALLUNITS',')'+
'endi','f'#010+ ')'#010+
'endif'#010+
#010+ #010+
'ifdef INSTALLPPUFILES'#010+ 'ifdef INSTALLPPUFILES'#010+
'ifdef PPUFILES'#010+ 'ifdef PPUFILES'#010+
@ -928,7 +929,7 @@ const fpcmakeini : array[0..105,1..240] of char=(
'INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))'#010+ 'INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))'#010+
'INSTALLPPULIBFILES:=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))'#010+ 'INSTALLPPULIBFILES:=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))'#010+
'else'#010+ 'else'#010+
'INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLP','PUFILES))'#010+ 'INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(I','NSTALLPPUFILES))'#010+
'endif'#010+ 'endif'#010+
'else'#010+ 'else'#010+
'INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPU'+ 'INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPU'+
@ -938,70 +939,71 @@ const fpcmakeini : array[0..105,1..240] of char=(
#010+ #010+
'fpc_showinstall: $(SHOWINSTALLTARGET)'#010+ 'fpc_showinstall: $(SHOWINSTALLTARGET)'#010+
'ifdef INSTALLEXEFILES'#010+ 'ifdef INSTALLEXEFILES'#010+
' @$(ECHO) $(addprefix "\n"$(BININSTALLDIR)/,$(INSTALLEXEFILE','S'+ ' @$(ECHO) -e $(addprefix "\n"$(BININSTALLDIR)/,$(INST','ALLEXEFI'+
'))'#010+
'endif'#010+
'ifdef INSTALLPPUFILES'#010+
' @$(ECHO) $(addprefix "\n"$(UNITINSTALLDIR)/,$(INSTALLPPUFILES)'+
')'#010+
'ifneq ($(INSTALLPPULINKFILES),)'#010+
' @$(ECHO) $(addprefix "\n"$(UNITINSTALLDIR)/,$(INSTALLPPULINKFI'+
'LES))'#010+ 'LES))'#010+
'endif'#010+ 'endif'#010+
'ifneq ($(INSTALLPPULIB','FILES),)'#010+ 'ifdef INSTALLPPUFILES'#010+
' @$(ECHO) $(addprefix "\n"$(LIBINSTALLDIR)/,$(INSTALLPPULIBFILE'+ ' @$(ECHO) -e $(addprefix "\n"$(UNITINSTALLDIR)/,$(INSTALLPPUFIL'+
'S))'#010+ 'ES))'#010+
'ifneq ($(INSTALLPPULINKFILES),)'#010+
' @$(ECHO) -e $(addprefix "\n"$(UNITINSTALLDIR)/,$(INSTALLPPULIN'+
'KFILES))'#010+
'endif'#010+
'ifneq ','($(INSTALLPPULIBFILES),)'#010+
' @$(ECHO) -e $(addprefix "\n"$(LIBINSTALLDIR)/,$(INSTALLPPULIBF'+
'ILES))'#010+
'endif'#010+ 'endif'#010+
'endif'#010+ 'endif'#010+
'ifdef EXTRAINSTALLFILES'#010+ 'ifdef EXTRAINSTALLFILES'#010+
' @$(ECHO) $(addprefix "\n"$(EXTRAINSTALLDIR)/,$(EXTRAINSTALLFIL'+ ' @$(ECHO) -e $(addprefix "\n"$(EXTRAINSTALLDIR)/,$(EXTRAINSTALL'+
'ES))'#010+ 'FILES))'#010+
'endif'#010+ 'endif'#010+
#010+ #010+
'fpc_install: $(INSTALLTARGET)'#010+ 'fpc_install: $(IN','STALLTARGET)'#010+
'# Create ','UnitInstallFiles'#010+ '# Create UnitInstallFiles'#010+
'ifdef INSTALLEXEFILES'#010+ 'ifdef INSTALLEXEFILES'#010+
' $(MKDIR) $(BININSTALLDIR)'#010+ ' $(MKDIR) $(BININSTALLDIR)'#010+
'# Compress the exes if upx is defined'#010+ '# Compress the exes if upx is defined'#010+
'ifdef UPXPROG'#010+ 'ifdef UPXPROG'#010+
' -$(UPXPROG) $(INSTALLEXEFILES)'#010+ ' -$(UPXPROG) $(INSTALLEXEFILES)'#010+
'endif'#010+ 'endif'#010+
' $(INSTALLEXE) $(INSTALLEXEFILES) $(BININSTALLDIR)'#010+ ' $(INSTALLEXE) $(INSTALLEXEFILES) $(BININ','STALLDIR)'#010+
'endif'#010+ 'endif'#010+
'ifdef ','INSTALLPPUFILES'#010+ 'ifdef INSTALLPPUFILES'#010+
' $(MKDIR) $(UNITINSTALLDIR)'#010+ ' $(MKDIR) $(UNITINSTALLDIR)'#010+
' $(INSTALL) $(INSTALLPPUFILES) $(UNITINSTALLDIR)'#010+ ' $(INSTALL) $(INSTALLPPUFILES) $(UNITINSTALLDIR)'#010+
'ifneq ($(INSTALLPPULINKFILES),)'#010+ 'ifneq ($(INSTALLPPULINKFILES),)'#010+
' $(INSTALL) $(INSTALLPPULINKFILES) $(UNITINSTALLDIR)'#010+ ' $(INSTALL) $(INSTALLPPULINKFILES) $(UNITINSTALLDIR)'#010+
'endif'#010+ 'endif'#010+
'ifneq ($(INSTALLPPULIBFILES),)'#010+ 'ifneq ($(INST','ALLPPULIBFILES),)'#010+
' ',' $(MKDIR) $(LIBINSTALLDIR)'#010+ ' $(MKDIR) $(LIBINSTALLDIR)'#010+
' $(INSTALL) $(INSTALLPPULIBFILES) $(LIBINSTALLDIR)'#010+ ' $(INSTALL) $(INSTALLPPULIBFILES) $(LIBINSTALLDIR)'#010+
'endif'#010+ 'endif'#010+
'endif'#010+ 'endif'#010+
'ifdef EXTRAINSTALLFILES'#010+ 'ifdef EXTRAINSTALLFILES'#010+
' $(MKDIR) $(EXTRAINSTALLDIR)'#010+ ' $(MKDIR) $(EXTRAINSTALLDIR)'#010+
' $(INSTALL) $(EXTRAINSTALLFILES) $(EXTRAINSTALLDIR)'#010+ ' $(INSTALL) $(EXTRAINSTALLFILES) $(EXTRAINSTALLDIR)',#010+
'endif'#010+ 'endif'#010+
#010+ #010+
#010+ #010+
'[sourceinstal','lrules]'#010+ '[sourceinstallrules]'#010+
'#####################################################################'#010+ '#####################################################################'#010+
'# Source install rules'#010+ '# Source install rules'#010+
'#####################################################################'#010+ '#####################################################################'#010+
#010+ #010+
'.PHONY: fpc_sourceinstall'#010+ '.PHONY: fpc_sourceinstall'#010+
#010+ #010+
'fpc_sourceinstall: clean'#010+ 'fpc_sourceinstall: ','clean'#010+
' $(MKDIR)',' $(SOURCEINSTALLDIR)'#010+ ' $(MKDIR) $(SOURCEINSTALLDIR)'#010+
' $(COPYTREE) $(BASEDIR) $(SOURCEINSTALLDIR)'#010+ ' $(COPYTREE) $(BASEDIR) $(SOURCEINSTALLDIR)'#010+
#010+ #010+
'[zipinstallrules]'#010+ '[zipinstallrules]'#010+
'#####################################################################'#010+ '#####################################################################'#010+
'# Zip'#010+ '# Zip'#010+
'#####################################################################'#010+ '###################################################','#################'+
'#'#010+
#010+ #010+
'.P','HONY: fpc_zipinstall fpc_zipinstalladd'#010+ '.PHONY: fpc_zipinstall fpc_zipinstalladd'#010+
#010+ #010+
'# Temporary path to pack a file'#010+ '# Temporary path to pack a file'#010+
'ifndef PACKDIR'#010+ 'ifndef PACKDIR'#010+
@ -1014,10 +1016,10 @@ const fpcmakeini : array[0..105,1..240] of char=(
#010+ #010+
'# Test dir if none specified'#010+ '# Test dir if none specified'#010+
'ifndef DESTZIPDIR'#010+ 'ifndef DESTZIPDIR'#010+
'DESTZIPDIR:=$(BASEDIR)'#010+ 'DESTZIPDIR:=','$(BASEDIR)'#010+
'endif'#010+ 'endif'#010+
#010+ #010+
'# Ad','d .zip/.tar.gz extension'#010+ '# Add .zip/.tar.gz extension'#010+
'ifdef ZIPNAME'#010+ 'ifdef ZIPNAME'#010+
'ifndef inlinux'#010+ 'ifndef inlinux'#010+
'override ZIPNAME:=$(ZIPNAME)$(ZIPEXT)'#010+ 'override ZIPNAME:=$(ZIPNAME)$(ZIPEXT)'#010+
@ -1027,15 +1029,15 @@ const fpcmakeini : array[0..105,1..240] of char=(
'# Note: This will not remove the zipfile first'#010+ '# Note: This will not remove the zipfile first'#010+
'fpc_zipinstalladd:'#010+ 'fpc_zipinstalladd:'#010+
'ifndef ZIPNAME'#010+ 'ifndef ZIPNAME'#010+
' @$(ECHO) Please specify ZIPNAME!'#010+ ' @$(ECHO) "Please specify',' ZIPNAME!"'#010+
' @exit',#010+ ' @exit 1'#010+
'else'#010+ 'else'#010+
' $(MAKE) $(ZIPTARGET) PREFIXINSTALLDIR=$(PACKDIR)'#010+ ' $(MAKE) $(ZIPTARGET) PREFIXINSTALLDIR=$(PACKDIR)'#010+
'ifdef inlinux'#010+ 'ifdef inlinux'#010+
' gzip -d $(DESTZIPDIR)/$(ZIPNAME).tar.gz'#010+ ' gzip -d $(DESTZIPDIR)/$(ZIPNAME).tar.gz'#010+
' cd $(PACKDIR) ; tar rv --file $(DESTZIPDIR)/$(ZIPNAME).tar * ;'+ ' cd $(PACKDIR) ; tar rv --file $(DESTZIPDIR)/$(ZIPNAME).tar * ;'+
' cd $(BASEDIR)'#010+ ' cd $(BASEDIR)'#010+
' gzip $(DESTZIPDIR)/$(Z','IPNAME).tar'#010+ ' ',' gzip $(DESTZIPDIR)/$(ZIPNAME).tar'#010+
'else'#010+ 'else'#010+
' cd $(PACKDIR) ; $(ZIPPROG) $(DESTZIPDIR)/$(ZIPNAME) * ; cd $(B'+ ' cd $(PACKDIR) ; $(ZIPPROG) $(DESTZIPDIR)/$(ZIPNAME) * ; cd $(B'+
'ASEDIR)'#010+ 'ASEDIR)'#010+
@ -1046,17 +1048,17 @@ const fpcmakeini : array[0..105,1..240] of char=(
'# First remove the zip and then install'#010+ '# First remove the zip and then install'#010+
'fpc_zipinstall:'#010+ 'fpc_zipinstall:'#010+
'ifndef ZIPNAME'#010+ 'ifndef ZIPNAME'#010+
' @$(ECHO) Please specify',' ZIPNAME!'#010+ ' ',' @$(ECHO) "Please specify ZIPNAME!"'#010+
' @exit'#010+ ' @exit 1'#010+
'else'#010+ 'else'#010+
' $(DEL) $(DESTZIPDIR)/$(ZIPNAME)'#010+ ' $(DEL) $(DESTZIPDIR)/$(ZIPNAME)'#010+
' $(MAKE) $(ZIPTARGET) PREFIXINSTALLDIR=$(PACKDIR)'#010+ ' $(MAKE) $(ZIPTARGET) PREFIXINSTALLDIR=$(PACKDIR)'#010+
'ifdef inlinux'#010+ 'ifdef inlinux'#010+
' cd $(PACKDIR) ; tar cvz --file $(DESTZIPDIR)/$(ZIPNAME).tar.gz'+ ' cd $(PACKDIR) ; tar cvz --file $(DESTZIPDIR)/$(ZIPNAME).tar.gz',
' * ; cd $(BASEDIR)'#010+ ' * ; cd $(BASEDIR)'#010+
'else'#010+ 'else'#010+
' ',' cd $(PACKDIR) ; $(ZIPPROG) $(DESTZIPDIR)/$(ZIPNAME) * ; cd $'+ ' cd $(PACKDIR) ; $(ZIPPROG) $(DESTZIPDIR)/$(ZIPNAME) * ; cd $(B'+
'(BASEDIR)'#010+ 'ASEDIR)'#010+
'endif'#010+ 'endif'#010+
' $(DELTREE) $(PACKDIR)'#010+ ' $(DELTREE) $(PACKDIR)'#010+
'endif'#010+ 'endif'#010+
@ -1064,9 +1066,8 @@ const fpcmakeini : array[0..105,1..240] of char=(
#010+ #010+
'[cleanrules]'#010+ '[cleanrules]'#010+
'#####################################################################'#010+ '#####################################################################'#010+
'# Clean rules'#010+ '# Clean rul','es'#010+
'###########################','#########################################'+ '#####################################################################'#010+
'#'#010+
#010+ #010+
'.PHONY: fpc_clean fpc_cleanall'#010+ '.PHONY: fpc_clean fpc_cleanall'#010+
#010+ #010+
@ -1076,7 +1077,7 @@ const fpcmakeini : array[0..105,1..240] of char=(
#010+ #010+
'ifdef CLEANPPUFILES'#010+ 'ifdef CLEANPPUFILES'#010+
'ifdef PPUFILES'#010+ 'ifdef PPUFILES'#010+
'CLEANPPULINKFILES:=$(shell $(PPUFI','LES) $(CLEANPPUFILES))'#010+ 'CLEA','NPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))'#010+
'else'#010+ 'else'#010+
'CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILE'+ 'CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILE'+
'S)))'#010+ 'S)))'#010+
@ -1087,8 +1088,8 @@ const fpcmakeini : array[0..105,1..240] of char=(
'ifdef CLEANEXEFILES'#010+ 'ifdef CLEANEXEFILES'#010+
' -$(DEL) $(CLEANEXEFILES)'#010+ ' -$(DEL) $(CLEANEXEFILES)'#010+
'endif'#010+ 'endif'#010+
'ifdef CLEANPPUFILES'#010+ 'ifdef CLE','ANPPUFILES'#010+
' -$(DEL) $(C','LEANPPUFILES)'#010+ ' -$(DEL) $(CLEANPPUFILES)'#010+
'endif'#010+ 'endif'#010+
'ifneq ($(CLEANPPULINKFILES),)'#010+ 'ifneq ($(CLEANPPULINKFILES),)'#010+
' -$(DEL) $(CLEANPPULINKFILES)'#010+ ' -$(DEL) $(CLEANPPULINKFILES)'#010+
@ -1096,16 +1097,16 @@ const fpcmakeini : array[0..105,1..240] of char=(
'ifdef EXTRACLEANFILES'#010+ 'ifdef EXTRACLEANFILES'#010+
' -$(DEL) $(EXTRACLEANFILES)'#010+ ' -$(DEL) $(EXTRACLEANFILES)'#010+
'endif'#010+ 'endif'#010+
' -$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)'#010+ ' -$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFIL','E)'#010+
#010+ #010+
'fpc_cleanall: $(CLEANTARGE','T)'#010+ 'fpc_cleanall: $(CLEANTARGET)'#010+
'ifdef CLEANEXEFILES'#010+ 'ifdef CLEANEXEFILES'#010+
' -$(DEL) $(CLEANEXEFILES)'#010+ ' -$(DEL) $(CLEANEXEFILES)'#010+
'endif'#010+ 'endif'#010+
' -$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHA'+ ' -$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHA'+
'REDLIBEXT) *$(PPLEXT)'#010+ 'REDLIBEXT) *$(PPLEXT)'#010+
' -$(DELTREE) *$(SMARTEXT)'#010+ ' -$(DELTREE) *$(SMARTEXT)'#010+
' -$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFI','LE)'#010+ ' -$(DEL) $(FPCMA','DE) $(PPAS) link.res $(REDIRFILE)'#010+
#010+ #010+
#010+ #010+
'[dependrules]'#010+ '[dependrules]'#010+
@ -1116,7 +1117,7 @@ const fpcmakeini : array[0..105,1..240] of char=(
'.PHONY: fpc_depend'#010+ '.PHONY: fpc_depend'#010+
#010+ #010+
'fpc_depend:'#010+ 'fpc_depend:'#010+
' $(PPDEP) $(UNITOBJECTS)'#010, ' ',' $(PPDEP) $(UNITOBJECTS)'#010+
#010+ #010+
#010+ #010+
'[inforules]'#010+ '[inforules]'#010+
@ -1124,8 +1125,8 @@ const fpcmakeini : array[0..105,1..240] of char=(
'# Info rules'#010+ '# Info rules'#010+
'#####################################################################'#010+ '#####################################################################'#010+
#010+ #010+
'.PHONY: fpc_info fpc_cfginfo fpc_objectinfo fpc_toolsinfo fpc_installi'+ '.PHONY: fpc_info fpc_cfginfo fpc_objectinf','o fpc_toolsinfo fpc_instal'+
'nf','o \'#010+ 'linfo \'#010+
' fpc_dirinfo'#010+ ' fpc_dirinfo'#010+
#010+ #010+
'fpc_info: $(INFOTARGET)'#010+ 'fpc_info: $(INFOTARGET)'#010+
@ -1136,8 +1137,8 @@ const fpcmakeini : array[0..105,1..240] of char=(
' @$(ECHO) == Configuration info =='#010+ ' @$(ECHO) == Configuration info =='#010+
' @$(ECHO)'#010+ ' @$(ECHO)'#010+
' @$(ECHO) FPC....... $(FPC)'#010+ ' @$(ECHO) FPC....... $(FPC)'#010+
' @$(ECHO) Version... $(FPC_VERSION)'#010+ ' @$(ECHO) Versi','on... $(FPC_VERSION)'#010+
' @','$(ECHO) CPU....... $(CPU_TARGET)'#010+ ' @$(ECHO) CPU....... $(CPU_TARGET)'#010+
' @$(ECHO) Source.... $(OS_SOURCE)'#010+ ' @$(ECHO) Source.... $(OS_SOURCE)'#010+
' @$(ECHO) Target.... $(OS_TARGET)'#010+ ' @$(ECHO) Target.... $(OS_TARGET)'#010+
' @$(ECHO)'#010+ ' @$(ECHO)'#010+
@ -1146,8 +1147,8 @@ const fpcmakeini : array[0..105,1..240] of char=(
'fpc_infodirs:'#010+ 'fpc_infodirs:'#010+
'ifdef inlinux'#010+ 'ifdef inlinux'#010+
' @$(ECHO)'#010+ ' @$(ECHO)'#010+
' @$(ECHO) == Directory info =='#010+ ' @$(ECHO) ',' == Directory info =='#010+
' ','@$(ECHO)'#010+ ' @$(ECHO)'#010+
'ifdef NEEDGCCLIB'#010+ 'ifdef NEEDGCCLIB'#010+
' @$(ECHO) GCC library is needed.'#010+ ' @$(ECHO) GCC library is needed.'#010+
'endif'#010+ 'endif'#010+
@ -1156,7 +1157,7 @@ const fpcmakeini : array[0..105,1..240] of char=(
'endif'#010+ 'endif'#010+
' @$(ECHO) Basedir......... $(BASEDIR)'#010+ ' @$(ECHO) Basedir......... $(BASEDIR)'#010+
' @$(ECHO)'#010+ ' @$(ECHO)'#010+
' @$(ECHO) GCC library..... $','(GCCLIBDIR)'#010+ ' ',' @$(ECHO) GCC library..... $(GCCLIBDIR)'#010+
' @$(ECHO) Other library... $(OTHERLIBDIR)'#010+ ' @$(ECHO) Other library... $(OTHERLIBDIR)'#010+
' @$(ECHO)'#010+ ' @$(ECHO)'#010+
'endif'#010+ 'endif'#010+
@ -1166,8 +1167,8 @@ const fpcmakeini : array[0..105,1..240] of char=(
' @$(ECHO)'#010+ ' @$(ECHO)'#010+
' @$(ECHO) == Tools info =='#010+ ' @$(ECHO) == Tools info =='#010+
' @$(ECHO)'#010+ ' @$(ECHO)'#010+
' @$(ECHO) Pwd....... $(PWD)'#010+ ' @$(ECHO) Pwd......','. $(PWD)'#010+
' @$(ECHO) Ech','o...... $(ECHO)'#010+ ' @$(ECHO) Echo...... $(ECHO)'#010+
'ifdef PPDEP'#010+ 'ifdef PPDEP'#010+
' @$(ECHO) PPDep..... $(PPDEP)'#010+ ' @$(ECHO) PPDep..... $(PPDEP)'#010+
'endif'#010+ 'endif'#010+
@ -1178,7 +1179,7 @@ const fpcmakeini : array[0..105,1..240] of char=(
' @$(ECHO) PPUFiles.. $(PPUFILES)'#010+ ' @$(ECHO) PPUFiles.. $(PPUFILES)'#010+
'endif'#010+ 'endif'#010+
'ifdef DATA2INC'#010+ 'ifdef DATA2INC'#010+
' @$(ECHO) Data2Inc.. $(','DATA2INC)'#010+ ' ',' @$(ECHO) Data2Inc.. $(DATA2INC)'#010+
'endif'#010+ 'endif'#010+
'ifdef SED'#010+ 'ifdef SED'#010+
' @$(ECHO) Sed....... $(SED)'#010+ ' @$(ECHO) Sed....... $(SED)'#010+
@ -1190,9 +1191,9 @@ const fpcmakeini : array[0..105,1..240] of char=(
' @$(ECHO) Diff...... $(DIFF)'#010+ ' @$(ECHO) Diff...... $(DIFF)'#010+
'endif'#010+ 'endif'#010+
'ifdef CMP'#010+ 'ifdef CMP'#010+
' @$(ECHO) Cmp....... $(CMP)'#010+ ' @$(ECHO) Cmp...','.... $(CMP)'#010+
'endif'#010+ 'endif'#010+
'ifdef UPXPRO','G'#010+ 'ifdef UPXPROG'#010+
' @$(ECHO) Upx....... $(UPXPROG)'#010+ ' @$(ECHO) Upx....... $(UPXPROG)'#010+
'endif'#010+ 'endif'#010+
'ifdef ZIPPROG'#010+ 'ifdef ZIPPROG'#010+
@ -1203,43 +1204,43 @@ const fpcmakeini : array[0..105,1..240] of char=(
'[info_objects]'#010+ '[info_objects]'#010+
'fpc_infoobjects:'#010+ 'fpc_infoobjects:'#010+
' @$(ECHO)'#010+ ' @$(ECHO)'#010+
' @$(ECHO) == Object info =='#010+ ' @$(ECHO) == Object info ==',#010+
' @$(ECHO)'#010+ ' @$(ECHO)'#010+
' @$(E','CHO) LoaderObjects..... $(LOADEROBJECTS)'#010+ ' @$(ECHO) LoaderObjects..... $(LOADEROBJECTS)'#010+
' @$(ECHO) UnitObjects....... $(UNITOBJECTS)'#010+ ' @$(ECHO) UnitObjects....... $(UNITOBJECTS)'#010+
' @$(ECHO) ExeObjects........ $(EXEOBJECTS)'#010+ ' @$(ECHO) ExeObjects........ $(EXEOBJECTS)'#010+
' @$(ECHO)'#010+ ' @$(ECHO)'#010+
' @$(ECHO) ExtraCleanUnits... $(EXTRACLEANUNITS)'#010+ ' @$(ECHO) ExtraCleanUnits... $(EXTRACLEA','NUNITS)'#010+
' @$(ECHO) Extr','aCleanFiles... $(EXTRACLEANFILES)'#010+ ' @$(ECHO) ExtraCleanFiles... $(EXTRACLEANFILES)'#010+
' @$(ECHO)'#010+ ' @$(ECHO)'#010+
' @$(ECHO) ExtraInstallUnits. $(EXTRAINSTALLUNITS)'#010+ ' @$(ECHO) ExtraInstallUnits. $(EXTRAINSTALLUNITS)'#010+
' @$(ECHO) ExtraInstallFiles. $(EXTRAINSTALLFILES)'#010+ ' @$(ECHO) ExtraInstallFiles. $(EXTRAINSTALLFILES)'#010+
' @$(ECHO)'#010+ ' @$(ECHO)'#010+
#010+ #010+
'[info_install]'#010+ '[info_install]'#010+
'fpc_infoinstall:'#010+ 'fpc_infoin','stall:'#010+
' @$(ECHO)'#010+ ' @$(ECHO)'#010+
' ',' @$(ECHO) == Install info =='#010+ ' @$(ECHO) == Install info =='#010+
' @$(ECHO)'#010+ ' @$(ECHO)'#010+
'ifdef DATE'#010+ 'ifdef DATE'#010+
' @$(ECHO) DateStr.............. $(DATESTR)'#010+ ' @$(ECHO) DateStr.............. $(DATESTR)'#010+
'endif'#010+ 'endif'#010+
' @$(ECHO) PackageSuffix........ $(PACKAGESUFFIX)'#010+ ' @$(ECHO) PackageSuffix........ $(PACKAGESUFFIX)'#010+
' @$(ECHO)'#010+ ' @$(ECHO)'#010+
' @$(ECHO) BaseInstallDir....... $(BASEINST','ALLDIR)'#010+ ' @$(ECHO) Ba','seInstallDir....... $(BASEINSTALLDIR)'#010+
' @$(ECHO) BinInstallDir........ $(BININSTALLDIR)'#010+ ' @$(ECHO) BinInstallDir........ $(BININSTALLDIR)'#010+
' @$(ECHO) LibInstallDir........ $(LIBINSTALLDIR)'#010+ ' @$(ECHO) LibInstallDir........ $(LIBINSTALLDIR)'#010+
' @$(ECHO) UnitInstallDir....... $(UNITINSTALLDIR)'#010+ ' @$(ECHO) UnitInstallDir....... $(UNITINSTALLDIR)'#010+
' @$(ECHO) SourceInstallDir..... $(SOURCEINSTALLDIR)'#010, ' @$(ECHO) SourceInstal','lDir..... $(SOURCEINSTALLDIR)'#010+
' @$(ECHO) DocInstallDir........ $(DOCINSTALLDIR)'#010+ ' @$(ECHO) DocInstallDir........ $(DOCINSTALLDIR)'#010+
' @$(ECHO) ExtraInstallDir...... $(EXTRAINSTALLDIR)'#010+ ' @$(ECHO) ExtraInstallDir...... $(EXTRAINSTALLDIR)'#010+
' @$(ECHO)'#010+ ' @$(ECHO)'#010+
#010+ #010+
'[userrules]'#010+ '[userrules]'#010+
'#####################################################################'#010+ '################################################################','####'+
'# Users rules'#010+
'##########','##########################################################'+
'#'#010+ '#'#010+
'# Users rules'#010+
'#####################################################################'#010+
#010+ #010+
'[end]'#010 '[end]'#010
); );

View File

@ -752,7 +752,7 @@ fpc_loaders_clean:
-$(DEL) $(LOADEROFILES) -$(DEL) $(LOADEROFILES)
fpc_loaders_showinstall: fpc_loaders_showinstall:
@$(ECHO) $(addprefix "\n"$(UNITINSTALLDIR)/,$(LOADEROFILES)) @$(ECHO) -e $(addprefix "\n"$(UNITINSTALLDIR)/,$(LOADEROFILES))
fpc_loaders_install: fpc_loaders_install:
$(MKDIR) $(UNITINSTALLDIR) $(MKDIR) $(UNITINSTALLDIR)
@ -867,12 +867,12 @@ fpc_smart:
fpc_shared: all fpc_shared: all
ifdef inlinux ifdef inlinux
ifndef LIBNAME ifndef LIBNAME
@$(ECHO) LIBNAME not set @$(ECHO) "LIBNAME not set"
else else
$(PPUMOVE) $(SHAREDLIBUNITOBJECTS) -o$(LIBNAME) $(PPUMOVE) $(SHAREDLIBUNITOBJECTS) -o$(LIBNAME)
endif endif
else else
@$(ECHO) Shared Libraries not supported @$(ECHO) "Shared Libraries not supported"
endif endif
@ -902,19 +902,19 @@ endif
fpc_showinstall: $(SHOWINSTALLTARGET) fpc_showinstall: $(SHOWINSTALLTARGET)
ifdef INSTALLEXEFILES ifdef INSTALLEXEFILES
@$(ECHO) $(addprefix "\n"$(BININSTALLDIR)/,$(INSTALLEXEFILES)) @$(ECHO) -e $(addprefix "\n"$(BININSTALLDIR)/,$(INSTALLEXEFILES))
endif endif
ifdef INSTALLPPUFILES ifdef INSTALLPPUFILES
@$(ECHO) $(addprefix "\n"$(UNITINSTALLDIR)/,$(INSTALLPPUFILES)) @$(ECHO) -e $(addprefix "\n"$(UNITINSTALLDIR)/,$(INSTALLPPUFILES))
ifneq ($(INSTALLPPULINKFILES),) ifneq ($(INSTALLPPULINKFILES),)
@$(ECHO) $(addprefix "\n"$(UNITINSTALLDIR)/,$(INSTALLPPULINKFILES)) @$(ECHO) -e $(addprefix "\n"$(UNITINSTALLDIR)/,$(INSTALLPPULINKFILES))
endif endif
ifneq ($(INSTALLPPULIBFILES),) ifneq ($(INSTALLPPULIBFILES),)
@$(ECHO) $(addprefix "\n"$(LIBINSTALLDIR)/,$(INSTALLPPULIBFILES)) @$(ECHO) -e $(addprefix "\n"$(LIBINSTALLDIR)/,$(INSTALLPPULIBFILES))
endif endif
endif endif
ifdef EXTRAINSTALLFILES ifdef EXTRAINSTALLFILES
@$(ECHO) $(addprefix "\n"$(EXTRAINSTALLDIR)/,$(EXTRAINSTALLFILES)) @$(ECHO) -e $(addprefix "\n"$(EXTRAINSTALLDIR)/,$(EXTRAINSTALLFILES))
endif endif
fpc_install: $(INSTALLTARGET) fpc_install: $(INSTALLTARGET)
@ -986,8 +986,8 @@ endif
# Note: This will not remove the zipfile first # Note: This will not remove the zipfile first
fpc_zipinstalladd: fpc_zipinstalladd:
ifndef ZIPNAME ifndef ZIPNAME
@$(ECHO) Please specify ZIPNAME! @$(ECHO) "Please specify ZIPNAME!"
@exit @exit 1
else else
$(MAKE) $(ZIPTARGET) PREFIXINSTALLDIR=$(PACKDIR) $(MAKE) $(ZIPTARGET) PREFIXINSTALLDIR=$(PACKDIR)
ifdef inlinux ifdef inlinux
@ -1003,8 +1003,8 @@ endif
# First remove the zip and then install # First remove the zip and then install
fpc_zipinstall: fpc_zipinstall:
ifndef ZIPNAME ifndef ZIPNAME
@$(ECHO) Please specify ZIPNAME! @$(ECHO) "Please specify ZIPNAME!"
@exit @exit 1
else else
$(DEL) $(DESTZIPDIR)/$(ZIPNAME) $(DEL) $(DESTZIPDIR)/$(ZIPNAME)
$(MAKE) $(ZIPTARGET) PREFIXINSTALLDIR=$(PACKDIR) $(MAKE) $(ZIPTARGET) PREFIXINSTALLDIR=$(PACKDIR)

View File

@ -554,6 +554,30 @@ var
end; end;
end; end;
procedure AddTargetsUnitDir(const pre:string;var t:TTargetsString);
var
i,j : integer;
hs,packdir : string;
begin
for i:=0 to targets do
if (t[i]<>'') then
begin
hs:=t[i];
repeat
j:=pos(' ',hs);
if j=0 then
j:=length(hs)+1;
packdir:=pre+'/'+Copy(hs,1,j-1);
mf.Add('ifneq ($(wildcard '+packdir+'/$(OS_TARGET)),)');
mf.Add('override NEEDUNITDIR+='+packdir+'/$(OS_TARGET)');
mf.Add('else');
mf.Add('override NEEDUNITDIR+='+packdir);
mf.Add('endif');
system.delete(hs,1,j);
until hs='';
end;
end;
procedure AddTargetDir(const s:string); procedure AddTargetDir(const s:string);
var var
j : integer; j : integer;
@ -769,10 +793,8 @@ begin
AddTargets('COMPONENTS',userini.components,false); AddTargets('COMPONENTS',userini.components,false);
if userini.PackageFCL then if userini.PackageFCL then
Add('override NEEDUNITDIR+=$(FPCDIR)/fcl/$(OS_TARGET)'); Add('override NEEDUNITDIR+=$(FPCDIR)/fcl/$(OS_TARGET)');
if not TargetStringEmpty(userini.Packages) then AddTargetsUnitDir('$(PACKAGEDIR)',userini.packages);
Add('override NEEDUNITDIR+=$(addprefix $(PACKAGEDIR)/,$(PACKAGES))'); AddTargetsUnitDir('$(COMPONENTDIR)',userini.components);
if not TargetStringEmpty(userini.Components) then
Add('override NEEDUNITDIR+=$(addprefix $(COMPONENTDIR)/,$(COMPONENTS))');
{ Libs } { Libs }
AddHead('Libraries'); AddHead('Libraries');
@ -1029,8 +1051,11 @@ begin
end. end.
{ {
$Log$ $Log$
Revision 1.14 1999-12-23 13:52:23 peter Revision 1.15 1999-12-23 19:32:28 peter
+ default{install,build,clean}dir * automatic support for package/target dir structure
Revision 1.14 1999/12/23 13:52:23 peter
+ default[install,build,clean]dir
Revision 1.13 1999/12/21 16:06:47 peter Revision 1.13 1999/12/21 16:06:47 peter
* don't call dirobjects for zipisntall,info * don't call dirobjects for zipisntall,info