From 57fb0bfa3559093d29a53d216c029b662587c71a Mon Sep 17 00:00:00 2001 From: Nikolay Nikolov Date: Mon, 10 Mar 2025 22:36:39 +0200 Subject: [PATCH] + add support for wasip2 to fpcmake --- utils/fpcm/fpcmake.inc | 674 +++++++++++++++++++++-------------------- utils/fpcm/fpcmake.ini | 5 + utils/fpcm/fpcmmain.pp | 13 +- 3 files changed, 355 insertions(+), 337 deletions(-) diff --git a/utils/fpcm/fpcmake.inc b/utils/fpcm/fpcmake.inc index 5c7f7d0e61..811e8777f0 100644 --- a/utils/fpcm/fpcmake.inc +++ b/utils/fpcm/fpcmake.inc @@ -1403,13 +1403,18 @@ const fpcmakeini : array[0..268,1..240] of char=( 'EXEEXT=.wasm'#010+ 'endif'#010+ #010+ + '# WASIp2'#010+ + 'ifeq ($(OS_TARGET),wasip2)'#010+ + 'EXEEXT=.wasm'#010+ + 'endif'#010+ + #010+ #010+ '# For 8.3 limited OS'#039's the short suffixes'#010+ '# Otherwise use the full source/target names'#010+ 'ifneq ($(filter $(OS_SOURCE),$(LIMIT83fs)),)'#010+ - 'FPCMADE=fpcmade.$(SHORTSUFFIX)'#010+ + 'FPCMADE=fpcmade','.$(SHORTSUFFIX)'#010+ 'ZIPSUFFIX=$(SHORTSUFFIX)'#010+ - 'ZIPCROSSPREFIX=',#010+ + 'ZIPCROSSPREFIX='#010+ 'ZIPSOURCESUFFIX=src'#010+ 'ZIPEXAMPLESUFFIX=exm'#010+ 'else'#010+ @@ -1418,9 +1423,9 @@ const fpcmakeini : array[0..268,1..240] of char=( 'ZIPEXAMPLESUFFIX=.examples'#010+ 'ifdef CROSSCOMPILE'#010+ 'ZIPSUFFIX=.$(SOURCESUFFIX)'#010+ - 'ZIPCROSSPREFIX=$(TARGETSUFFIX)-'#010+ + 'ZIPCROSS','PREFIX=$(TARGETSUFFIX)-'#010+ 'else'#010+ - 'ZIPSUFFIX=.$(TARGETSUFFIX)'#010, + 'ZIPSUFFIX=.$(TARGETSUFFIX)'#010+ 'ZIPCROSSPREFIX='#010+ 'endif'#010+ 'endif'#010+ @@ -1428,19 +1433,20 @@ const fpcmakeini : array[0..268,1..240] of char=( '[defaulttools]'#010+ '#####################################################################'#010+ '# Default Tools'#010+ - '#####################################################################'#010+ + '######################################################','##############'+ + '#'#010+ #010+ '# Names of the binutils tools'#010+ - 'ASNAME=$(','BINUTILSPREFIX)as'#010+ + 'ASNAME=$(BINUTILSPREFIX)as'#010+ 'LDNAME=$(BINUTILSPREFIX)ld'#010+ 'ARNAME=$(BINUTILSPREFIX)ar'#010+ 'RCNAME=$(BINUTILSPREFIX)rc'#010+ 'NASMNAME=$(BINUTILSPREFIX)nasm'#010+ #010+ '# assembler, redefine it if cross compiling'#010+ - 'ifndef ASPROG'#010+ + 'ifndef AS','PROG'#010+ 'ifdef CROSSBINDIR'#010+ - 'ASPROG=$(CROSSBINDIR)/$(ASNAME)$(','SRCEXEEXT)'#010+ + 'ASPROG=$(CROSSBINDIR)/$(ASNAME)$(SRCEXEEXT)'#010+ 'else'#010+ 'ASPROG=$(ASNAME)'#010+ 'endif'#010+ @@ -1453,11 +1459,11 @@ const fpcmakeini : array[0..268,1..240] of char=( 'else'#010+ 'LDPROG=$(LDNAME)'#010+ 'endif'#010+ - 'endif'#010+ + 'en','dif'#010+ #010+ '# Resource compiler'#010+ 'ifndef RCPROG'#010+ - 'ifdef CROSSBINDIR',#010+ + 'ifdef CROSSBINDIR'#010+ 'RCPROG=$(CROSSBINDIR)/$(RCNAME)$(SRCEXEEXT)'#010+ 'else'#010+ 'RCPROG=$(RCNAME)'#010+ @@ -1469,11 +1475,11 @@ const fpcmakeini : array[0..268,1..240] of char=( 'ifdef CROSSBINDIR'#010+ 'ARPROG=$(CROSSBINDIR)/$(ARNAME)$(SRCEXEEXT)'#010+ 'else'#010+ - 'ARPROG=$(ARNAME)'#010+ + 'ARPROG=$(ARN','AME)'#010+ 'endif'#010+ 'endif'#010+ #010+ - '# NASM assembler, redefine it if cross',' compiling'#010+ + '# NASM assembler, redefine it if cross compiling'#010+ 'ifndef NASMPROG'#010+ 'ifdef CROSSBINDIR'#010+ 'NASMPROG=$(CROSSBINDIR)/$(NASMNAME)$(SRCEXEEXT)'#010+ @@ -1485,11 +1491,11 @@ const fpcmakeini : array[0..268,1..240] of char=( '# Override defaults'#010+ 'AS=$(ASPROG)'#010+ 'LD=$(LDPROG)'#010+ - 'RC=$(RCPROG)'#010+ + 'RC=$(R','CPROG)'#010+ 'AR=$(ARPROG)'#010+ 'NASM=$(NASMPROG)'#010+ #010+ - '# ppas.bat / ppas.','sh'#010+ + '# ppas.bat / ppas.sh'#010+ 'ifdef inUnix'#010+ 'PPAS=./ppas$(SRCBATCHEXT)'#010+ 'else'#010+ @@ -1504,12 +1510,12 @@ const fpcmakeini : array[0..268,1..240] of char=( 'endif'#010+ #010+ 'ifdef DATE'#010+ - 'DATESTR:=$(shell $(DATE) +%Y%m%d)'#010+ + 'DATESTR:=$','(shell $(DATE) +%Y%m%d)'#010+ 'else'#010+ 'DATESTR='#010+ 'endif'#010+ #010+ - '# Zip optio','ns'#010+ + '# Zip options'#010+ 'ZIPOPT=-9'#010+ 'ZIPEXT=.zip'#010+ #010+ @@ -1524,38 +1530,38 @@ const fpcmakeini : array[0..268,1..240] of char=( #010+ #010+ '[command_begin]'#010+ - '#####################################################################'#010+ - '# Compiler Command Line'#010+ - '#####','###############################################################'+ + '###########################################','#########################'+ '#'#010+ + '# Compiler Command Line'#010+ + '#####################################################################'#010+ #010+ '# Load commandline OPTDEF and add FPC_CPU define, for compiling the'#010+ '# compiler this needs to be turned off'#010+ - 'ifndef NOCPUDEF'#010+ + 'ifndef NOCP','UDEF'#010+ 'override FPCOPTDEF=$(ARCH)'#010+ 'endif'#010+ #010+ #010+ - '# Load commandli','ne OPT and add target and unit dir to be sure'#010+ + '# Load commandline OPT and add target and unit dir to be sure'#010+ 'ifneq ($(OS_TARGET),$(OS_SOURCE))'#010+ 'override FPCOPT+=-T$(OS_TARGET)'#010+ 'endif'#010+ #010+ 'ifneq ($(CPU_TARGET),$(CPU_SOURCE))'#010+ 'override FPCOPT+=-P$(ARCH)'#010+ - 'endif'#010+ + 'en','dif'#010+ #010+ 'ifeq ($(OS_SOURCE),openbsd)'#010+ - 'override FPCOPT+=-FD$(N','EW_BINUTILS_PATH)'#010+ + 'override FPCOPT+=-FD$(NEW_BINUTILS_PATH)'#010+ 'override FPCMAKEOPT+=-FD$(NEW_BINUTILS_PATH)'#010+ 'override FPMAKE_BUILD_OPT+=-FD$(NEW_BINUTILS_PATH)'#010+ 'endif'#010+ #010+ 'ifndef CROSSBOOTSTRAP'#010+ 'ifneq ($(BINUTILSPREFIX),)'#010+ - 'override FPCOPT+=-XP$(BINUTILSPREFIX)'#010+ + 'override FPCOP','T+=-XP$(BINUTILSPREFIX)'#010+ 'ifneq ($(RLINKPATH),)'#010+ - 'override F','PCOPT+=-Xr$(RLINKPATH)'#010+ + 'override FPCOPT+=-Xr$(RLINKPATH)'#010+ 'endif'#010+ 'endif'#010+ 'endif'#010+ @@ -1563,18 +1569,18 @@ const fpcmakeini : array[0..268,1..240] of char=( '# When BINUTILSPREFIX is given and we are not cross-compiling then use'+ #010+ '# it while compiling the fpmake file. (For example to build i386-freeb'+ - 'sd'#010+ + 's','d'#010+ '# with BINUTILSPREFIX=i386-)'#010+ 'ifndef CROSSCOMPILE'#010+ - 'ifneq',' ($(BINUTILSPREFIX),)'#010+ + 'ifneq ($(BINUTILSPREFIX),)'#010+ 'override FPCMAKEOPT+=-XP$(BINUTILSPREFIX)'#010+ 'override FPMAKE_BUILD_OPT+=-XP$(BINUTILSPREFIX)'#010+ 'endif'#010+ 'endif'#010+ #010+ '# User dirs should be first, so they are looked at first'#010+ - 'ifdef UNITDIR'#010+ - 'override FPCOPT+=$(addprefix -Fu,$(UNITDIR))',#010+ + 'if','def UNITDIR'#010+ + 'override FPCOPT+=$(addprefix -Fu,$(UNITDIR))'#010+ 'endif'#010+ 'ifdef LIBDIR'#010+ 'override FPCOPT+=$(addprefix -Fl,$(LIBDIR))'#010+ @@ -1583,12 +1589,12 @@ const fpcmakeini : array[0..268,1..240] of char=( 'override FPCOPT+=$(addprefix -Fo,$(OBJDIR))'#010+ 'endif'#010+ 'ifdef INCDIR'#010+ - 'override FPCOPT+=$(addprefix -Fi,$(INCDIR))'#010+ + 'override FPCOPT+=$(addprefix -Fi,$(INC','DIR))'#010+ 'endif'#010+ #010+ '# Smartlinking'#010+ 'ifdef LINKSMART'#010+ - 'override FPC','OPT+=-XX'#010+ + 'override FPCOPT+=-XX'#010+ 'endif'#010+ #010+ '# Smartlinking creation'#010+ @@ -1603,9 +1609,9 @@ const fpcmakeini : array[0..268,1..240] of char=( 'endif'#010+ #010+ '# Release mode'#010+ - '# (strip, optimize and don'#039't load fpc.cfg)'#010+ + '# (strip,',' optimize and don'#039't load fpc.cfg)'#010+ 'ifdef RELEASE'#010+ - 'FPCCPUOP','T:=-O2'#010+ + 'FPCCPUOPT:=-O2'#010+ 'override FPCOPT+=-Ur -Xs $(FPCCPUOPT) -n'#010+ 'override FPCOPTDEF+=RELEASE'#010+ 'endif'#010+ @@ -1618,11 +1624,11 @@ const fpcmakeini : array[0..268,1..240] of char=( '# Optimizer'#010+ 'ifdef OPTIMIZE'#010+ 'override FPCOPT+=-O2'#010+ - 'endif'#010+ + 'endif',#010+ #010+ '# Verbose settings (warning,note,info)'#010+ 'ifdef VERBOSE'#010+ - 'o','verride FPCOPT+=-vwni'#010+ + 'override FPCOPT+=-vwni'#010+ 'endif'#010+ #010+ '# Needed compiler options'#010+ @@ -1630,28 +1636,28 @@ const fpcmakeini : array[0..268,1..240] of char=( 'override FPCOPT+=$(COMPILER_OPTIONS)'#010+ 'endif'#010+ 'ifdef COMPILER_UNITDIR'#010+ - 'override FPCOPT+=$(addprefix -Fu,$(COMPILER_UNITDIR))'#010+ + 'override FPCOPT+=$(addprefix -Fu,$(COMPI','LER_UNITDIR))'#010+ 'endif'#010+ 'ifdef COMPILER_LIBRARYDIR'#010+ - 'override F','PCOPT+=$(addprefix -Fl,$(COMPILER_LIBRARYDIR))'#010+ + 'override FPCOPT+=$(addprefix -Fl,$(COMPILER_LIBRARYDIR))'#010+ 'endif'#010+ 'ifdef COMPILER_OBJECTDIR'#010+ 'override FPCOPT+=$(addprefix -Fo,$(COMPILER_OBJECTDIR))'#010+ 'endif'#010+ 'ifdef COMPILER_INCLUDEDIR'#010+ - 'override FPCOPT+=$(addprefix -Fi,$(COMPILER_INCLUDEDIR))'#010+ + 'override FPCOPT+=$','(addprefix -Fi,$(COMPILER_INCLUDEDIR))'#010+ 'endif'#010+ #010+ - '# Cross co','mpiler utils'#010+ + '# Cross compiler utils'#010+ 'ifdef CROSSBINDIR'#010+ 'override FPCOPT+=-FD$(CROSSBINDIR)'#010+ 'endif'#010+ #010+ '# Target dirs and the prefix to use for clean/install'#010+ 'ifdef COMPILER_TARGETDIR'#010+ - 'override FPCOPT+=-FE$(COMPILER_TARGETDIR)'#010+ + 'override FPCOPT+=-FE$(COMPILER_T','ARGETDIR)'#010+ 'ifeq ($(COMPILER_TARGETDIR),.)'#010+ - 'override TARGET','DIRPREFIX='#010+ + 'override TARGETDIRPREFIX='#010+ 'else'#010+ 'override TARGETDIRPREFIX=$(COMPILER_TARGETDIR)/'#010+ 'endif'#010+ @@ -1659,35 +1665,35 @@ const fpcmakeini : array[0..268,1..240] of char=( #010+ '# Unit target dir (default is units/-/'#010+ 'ifdef COMPILER_UNITTARGETDIR'#010+ - 'override FPCOPT+=-FU$(COMPILER_UNITTARGETDIR)'#010+ + 'override FPCOPT+=-FU$(COMPILER','_UNITTARGETDIR)'#010+ 'ifeq ($(COMPILER_UNITTARGETDIR),.)'#010+ - 'overr','ide UNITTARGETDIRPREFIX='#010+ + 'override UNITTARGETDIRPREFIX='#010+ 'else'#010+ 'override UNITTARGETDIRPREFIX=$(COMPILER_UNITTARGETDIR)/'#010+ 'endif'#010+ 'else'#010+ 'ifdef COMPILER_TARGETDIR'#010+ 'override COMPILER_UNITTARGETDIR=$(COMPILER_TARGETDIR)'#010+ - 'override UNITTARGETDIRPREFIX=$(TARGETDIRPREFIX)'#010+ + 'override',' UNITTARGETDIRPREFIX=$(TARGETDIRPREFIX)'#010+ 'endif'#010+ 'endif'#010+ #010+ - 'ifd','ef SYSROOTPATH'#010+ + 'ifdef SYSROOTPATH'#010+ 'override FPCOPT+=-XR$(SYSROOTPATH)'#010+ 'else'#010+ '# if we are compiling natively on aarch64-darwin and if -/Library/Deve'+ 'loper/CommandLineTools/SDKs/MacOSX.sdk exists,'#010+ - '# add it to the compiler command line'#010+ - 'ifeq ($(OS_TARGET),$(OS_SOURCE','))'#010+ + '# add it to ','the compiler command line'#010+ + 'ifeq ($(OS_TARGET),$(OS_SOURCE))'#010+ 'ifeq ($(OS_TARGET),darwin)'#010+ '# so far the only tested one'#010+ 'ifeq ($(CPU_TARGET),aarch64)'#010+ 'ifneq ($(wildcard /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk)'+ ',)'#010+ - 'override FPCOPT+=-XR/Library/Developer/CommandLineTools/SDKs/MacOSX.sd'+ - 'k'#010+ + 'override FPCOPT+=-XR/Li','brary/Developer/CommandLineTools/SDKs/MacOSX.'+ + 'sdk'#010+ + 'endif'#010+ 'endif'#010+ - 'e','ndif'#010+ 'endif'#010+ 'endif'#010+ 'endif'#010+ @@ -1698,20 +1704,20 @@ const fpcmakeini : array[0..268,1..240] of char=( #010+ '# create always pic'#039'ed code on x86_64, mips and mipsel'#010+ '# on unix-like systems'#010+ - 'ifneq ($(filter $(OS_TARGET),dragonfly freebsd openbsd netbsd linux so'+ - 'laris),)'#010+ - 'ifneq ($(fil','ter $(CPU_TARGET),x86_64 mips mipsel mips64 mips64el ris'+ - 'cv64 powerpc64),)'#010+ + 'ifneq ($(filter $(OS_TARGET),dragon','fly freebsd openbsd netbsd linux '+ + 'solaris),)'#010+ + 'ifneq ($(filter $(CPU_TARGET),x86_64 mips mipsel mips64 mips64el riscv'+ + '64 powerpc64),)'#010+ 'override FPCOPT+=-Cg'#010+ 'endif'#010+ 'endif'#010+ #010+ '# building without smartlinking on z80 makes no sense'#010+ - 'ifneq ($(filter $(CPU_TARGET),z80),)'#010+ + 'ifneq ($(filter $(CPU_','TARGET),z80),)'#010+ 'override FPCOPT+=-CX -XX'#010+ 'endif'#010+ #010+ - 'ifdef LIN','KSHARED'#010+ + 'ifdef LINKSHARED'#010+ '#!!! deactived for testing override FPCOPT+=-XD'#010+ 'endif'#010+ #010+ @@ -1721,9 +1727,9 @@ const fpcmakeini : array[0..268,1..240] of char=( 'ifdef GCCLIBDIR'#010+ 'override FPCOPT+=-Fl$(GCCLIBDIR)'#010+ 'ifdef FPCMAKEGCCLIBDIR'#010+ - 'override FPCMAKEOPT+=-Fl$(FPCMAKEGCCLIBDIR)'#010+ + 'overr','ide FPCMAKEOPT+=-Fl$(FPCMAKEGCCLIBDIR)'#010+ 'else'#010+ - 'override FPC','MAKEOPT+=-Fl$(GCCLIBDIR)'#010+ + 'override FPCMAKEOPT+=-Fl$(GCCLIBDIR)'#010+ 'endif'#010+ 'endif'#010+ 'ifdef OTHERLIBDIR'#010+ @@ -1733,19 +1739,19 @@ const fpcmakeini : array[0..268,1..240] of char=( #010+ '[command_end]'#010+ '# Add commandline options last so they can override'#010+ - 'ifdef OPT'#010+ + 'ifdef ','OPT'#010+ 'override FPCOPT+=$(OPT)'#010+ 'endif'#010+ #010+ - '# Override options to',' compile the fpmake-binary with command-line op'+ - 'tions provided in FPMAKEBUILDOPT'#010+ + '# Override options to compile the fpmake-binary with command-line opti'+ + 'ons provided in FPMAKEBUILDOPT'#010+ 'ifdef FPMAKEBUILDOPT'#010+ 'override FPMAKE_BUILD_OPT+=$(FPMAKEBUILDOPT)'#010+ 'endif'#010+ #010+ - '# Add defines from FPCOPTDEF to FPCOPT'#010+ + '# Add defines from FPCOPTDEF to',' FPCOPT'#010+ 'ifdef FPCOPTDEF'#010+ - 'override FPCOPT+=$(addprefix -d,','$(FPCOPTDEF))'#010+ + 'override FPCOPT+=$(addprefix -d,$(FPCOPTDEF))'#010+ 'endif'#010+ #010+ '# Was a config file specified ?'#010+ @@ -1755,9 +1761,9 @@ const fpcmakeini : array[0..268,1..240] of char=( #010+ '# Use the environment to pass commandline options?'#010+ 'ifdef USEENV'#010+ - 'override FPCEXTCMD:=$(FPCOPT)'#010+ + 'override FPCEXTCM','D:=$(FPCOPT)'#010+ 'override FPCOPT:=!FPCEXTCMD'#010+ - 'export FPCEXTCM','D'#010+ + 'export FPCEXTCMD'#010+ 'endif'#010+ #010+ 'override AFULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)'#010+ @@ -1767,20 +1773,20 @@ const fpcmakeini : array[0..268,1..240] of char=( 'override ACROSSCOMPILE=1'#010+ 'endif'#010+ #010+ - 'ifdef ACROSSCOMPILE'#010+ + 'ifde','f ACROSSCOMPILE'#010+ 'override FPCOPT+=$(CROSSOPT)'#010+ 'endif'#010+ #010+ - '# Co','mpiler commandline'#010+ + '# Compiler commandline'#010+ 'override COMPILER:=$(strip $(FPC) $(FPCOPT))'#010+ #010+ '# also call ppas if with command option -s'#010+ '# but only if the FULL_SOURCE and FULL_TARGET are equal'#010+ - '# or if -sh is used'#010+ + '# or if -sh is used'#010, 'ifneq (,$(filter -sh,$(COMPILER)))'#010+ 'UseEXECPPAS=1'#010+ 'endif'#010+ - 'i','fneq (,$(filter -s,$(COMPILER)))'#010+ + 'ifneq (,$(filter -s,$(COMPILER)))'#010+ 'ifeq ($(FULL_SOURCE),$(FULL_TARGET))'#010+ 'UseEXECPPAS=1'#010+ 'endif'#010+ @@ -1790,31 +1796,30 @@ const fpcmakeini : array[0..268,1..240] of char=( 'else'#010+ 'ifdef RUNBATCH'#010+ 'EXECPPAS:=@$(RUNBATCH) $(PPAS)'#010+ - 'else'#010+ + 'el','se'#010+ 'EXECPPAS:=@$(PPAS)'#010+ 'endif'#010+ 'endif'#010+ #010+ #010+ '[loaderrules]'#010+ - '######','##############################################################'+ - '#'#010+ + '#####################################################################'#010+ '# Loaders'#010+ '#####################################################################'#010+ #010+ '.PHONY: fpc_loaders'#010+ #010+ - 'ifneq ($(TARGET_LOADERS),)'#010+ + 'ifneq ($(TARGET_LO','ADERS),)'#010+ 'override ALLTARGET+=fpc_loaders'#010+ - 'override CLEANT','ARGET+=fpc_loaders_clean'#010+ + 'override CLEANTARGET+=fpc_loaders_clean'#010+ 'override INSTALLTARGET+=fpc_loaders_install'#010+ #010+ 'override LOADEROFILES:=$(addsuffix $(OEXT),$(TARGET_LOADERS))'#010+ 'endif'#010+ #010+ '%$(OEXT): %$(LOADEREXT)'#010+ - 'ifdef COMPILER_UNITTARGETDIR'#010+ - ' $(AS) -o $(COMPILER_UNITTARGETDIR)/$*$(O','EXT) $<'#010+ + 'ifdef COMPILER_UNITTA','RGETDIR'#010+ + ' $(AS) -o $(COMPILER_UNITTARGETDIR)/$*$(OEXT) $<'#010+ 'else'#010+ ' $(AS) -o $*$(OEXT) $<'#010+ 'endif'#010+ @@ -1823,36 +1828,37 @@ const fpcmakeini : array[0..268,1..240] of char=( #010+ 'fpc_loaders_clean:'#010+ 'ifdef COMPILER_UNITTARGETDIR'#010+ - ' -$(DEL) $(addprefix $(COMPILER_UNITTARGETDIR)/,$(LOADEROFILES)'+ - ')'#010+ + ' -$(DEL) $(addprefix $(','COMPILER_UNITTARGETDIR)/,$(LOADEROFILE'+ + 'S))'#010+ 'else'#010+ - ' -','$(DEL) $(LOADEROFILES)'#010+ + ' -$(DEL) $(LOADEROFILES)'#010+ 'endif'#010+ #010+ 'fpc_loaders_install:'#010+ ' $(MKDIR) $(INSTALL_UNITDIR)'#010+ 'ifdef COMPILER_UNITTARGETDIR'#010+ - ' $(INSTALL) $(addprefix $(COMPILER_UNITTARGETDIR)/,$(LOADEROFIL'+ - 'ES)) $(INSTALL_UNITDIR)'#010+ + ' $(INSTALL) $(addprefix $(COMPILER_UNITTARGETDIR)/,$(LOADEROF','I'+ + 'LES)) $(INSTALL_UNITDIR)'#010+ 'else'#010+ - ' $(INSTALL) $(LOAD','EROFILES) $(INSTALL_UNITDIR)'#010+ + ' $(INSTALL) $(LOADEROFILES) $(INSTALL_UNITDIR)'#010+ 'endif'#010+ #010+ #010+ '[unitrules]'#010+ '#####################################################################'#010+ '# Units'#010+ - '#####################################################################'#010+ + '#########################################################','###########'+ + '#'#010+ #010+ '.PHONY: fpc_units'#010+ #010+ - 'ifneq ($(TARGET_UNITS)$','(TARGET_IMPLICITUNITS),)'#010+ + 'ifneq ($(TARGET_UNITS)$(TARGET_IMPLICITUNITS),)'#010+ 'override ALLTARGET+=fpc_units'#010+ #010+ 'override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))'#010+ - 'override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITU'+ - 'NITS))'#010+ - 'override INSTALLPPUFILES+=$(UNITPPUFILES) $(IM','PLICITUNITPPUFILES)'#010+ + 'override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLIC','I'+ + 'TUNITS))'#010+ + 'override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)'#010+ 'override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)'#010+ 'endif'#010+ #010+ @@ -1860,47 +1866,47 @@ const fpcmakeini : array[0..268,1..240] of char=( #010+ #010+ '[exerules]'#010+ - '#####################################################################'#010+ - '# Exes'#010+ - '######','##############################################################'+ + '###########################','#########################################'+ '#'#010+ + '# Exes'#010+ + '#####################################################################'#010+ #010+ '.PHONY: fpc_exes'#010+ #010+ '# Programs are not needed for a cross installation'#010+ 'ifndef CROSSINSTALL'#010+ 'ifneq ($(TARGET_PROGRAMS),)'#010+ - 'override EXEFILES=$(addsuffix $(EXEEXT),$(TARGET_PROGRAMS)',')'#010+ + 'ov','erride EXEFILES=$(addsuffix $(EXEEXT),$(TARGET_PROGRAMS))'#010+ 'override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addsuffi'+ 'x $(LTOEXT),$(TARGET_PROGRAMS))$(addprefix $(STATICLIBPREFIX),$(addsuf'+ - 'fix $(STATICLIBEXT),$(TARGET_PROGRAMS))) $(addprefix $(IMPORTLIBPREFIX'+ - '),$(addsuffix $(STATICLIBEXT','),$(TARGET_PROGRAMS)))'#010+ + 'fix $(STATICLIBEXT),$(TARGET_PROGRAMS))) $','(addprefix $(IMPORTLIBPREF'+ + 'IX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS)))'#010+ 'override EXEDBGFILES:=$(addsuffix $(EXEDBGEXT),$(TARGET_PROGRAMS))'#010+ #010+ 'override ALLTARGET+=fpc_exes'#010+ 'override INSTALLEXEFILES+=$(EXEFILES)'#010+ - 'override CLEANEXEFILES+=$(EXEFILES) $(EXEOFILES)'#010+ - 'override CLEANEXEDBGFILES+=$(EXED','BGFILES)'#010+ + 'override CLEANEXEFILES+=$(','EXEFILES) $(EXEOFILES)'#010+ + 'override CLEANEXEDBGFILES+=$(EXEDBGFILES)'#010+ 'ifeq ($(OS_TARGET),os2)'#010+ 'override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_PROGRAMS))'#010+ 'endif'#010+ 'ifeq ($(OS_TARGET),emx)'#010+ - 'override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_PROGRAMS))'#010+ + 'override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGE','T_PROGRAMS))'#010+ 'endif'#010+ 'endif'#010+ 'endif'#010+ #010+ - 'fpc_exes: $(COMPILER_TAR','GETDIR) $(COMPILER_UNITTARGETDIR) $(EXEFILES'+ - ')'#010+ + 'fpc_exes: $(COMPILER_TARGETDIR) $(COMPILER_UNITTARGETDIR) $(EXEFILES)'#010+ #010+ #010+ '[rstrules]'#010+ '#####################################################################'#010+ '# Resource strings'#010+ - '#####################################################################'#010+ + '####################################','################################'+ + '#'#010+ #010+ 'ifdef TARGET_RSTS'#010+ - 'ove','rride RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))'#010+ + 'override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))'#010+ #010+ 'override CLEANRSTFILES+=$(RSTFILES)'#010+ 'endif'#010+ @@ -1908,32 +1914,31 @@ const fpcmakeini : array[0..268,1..240] of char=( #010+ '[examplerules]'#010+ '#####################################################################'#010+ - '# Examples'#010+ - '##############################################','######################'+ - '#'#010+ + '#',' Examples'#010+ + '#####################################################################'#010+ #010+ '.PHONY: fpc_examples'#010+ #010+ 'ifneq ($(TARGET_EXAMPLES),)'#010+ 'HASEXAMPLES=1'#010+ 'override EXAMPLESOURCEFILES=$(wildcard $(addsuffix .pp,$(TARGET_EXAMPL'+ - 'ES)) $(addsuffix .pas,$(TARGET_EXAMPLES)) $(addsuffix .lpr,$(TARGET_EX'+ - 'AMPLES)) $(','addsuffix .dpr,$(TARGET_EXAMPLES)))'#010+ + 'ES)) $(addsuffix .pas,$(T','ARGET_EXAMPLES)) $(addsuffix .lpr,$(TARGET_'+ + 'EXAMPLES)) $(addsuffix .dpr,$(TARGET_EXAMPLES)))'#010+ 'override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(TARGET_EXAMPLES))'#010+ 'override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(TARGET_EXAMPLES)) $(adds'+ - 'uffix $(LTOEXT),$(TARGET_EXAMPLES)) $(addprefix $(STATICLIBPREFIX),$(', - 'addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES))) $(addprefix $(IMPORTLIB'+ - 'PREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES)))'#010+ - 'override EXAMPLEDBGFILES:=$(addsuffix $(EXEDBGEXT),$(TARGET_EXAMPLES))'+ + 'uffix $(LTOEX','T),$(TARGET_EXAMPLES)) $(addprefix $(STATICLIBPREFIX),$'+ + '(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES))) $(addprefix $(IMPORTLI'+ + 'BPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES)))'#010+ + 'override EXAMPLEDBGFILES:=$(addsuffix $(EXEDBGEXT),$(TARG','ET_EXAMPLES'+ + '))'#010+ #010+ - #010+ - 'override CLEANEXEFILES+=$(EXAMPLEFILES) $','(EXAMPLEOFILES)'#010+ + 'override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES)'#010+ 'override CLEANEXEDBGFILES+=$(EXAMPLEDBGFILES)'#010+ 'ifeq ($(OS_TARGET),os2)'#010+ 'override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES))'#010+ 'endif'#010+ 'ifeq ($(OS_TARGET),emx)'#010+ - 'override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_E','XAMPLES))'#010+ + 'o','verride CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES))'#010+ 'endif'#010+ 'endif'#010+ 'ifneq ($(TARGET_EXAMPLEDIRS),)'#010+ @@ -1945,16 +1950,17 @@ const fpcmakeini : array[0..268,1..240] of char=( #010+ #010+ '[compilerules]'#010+ - '#####################################################################'#010+ - '# Gen','eral compile rules'#010+ + '###################','#################################################'+ + '#'#010+ + '# General compile rules'#010+ '#####################################################################'#010+ #010+ '.PHONY: fpc_all fpc_smart fpc_debug fpc_release fpc_shared'#010+ #010+ - '$(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET)'#010+ + '$(FPCMADE): $(ALLDEPENDENCIES) $(A','LLTARGET)'#010+ ' @$(ECHOREDIR) Compiled > $(FPCMADE)'#010+ #010+ - 'f','pc_all: $(FPCMADE)'#010+ + 'fpc_all: $(FPCMADE)'#010+ #010+ 'fpc_smart:'#010+ ' $(MAKE) all LINKSMART=1 CREATESMART=1'#010+ @@ -1965,9 +1971,9 @@ const fpcmakeini : array[0..268,1..240] of char=( 'fpc_release:'#010+ ' $(MAKE) all RELEASE=1'#010+ #010+ - '# General compile rules, available for both possible .pp and .pas exte'+ - 'nsions'#010+ - #010, + '# General compile rule','s, available for both possible .pp and .pas ex'+ + 'tensions'#010+ + #010+ '.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) $(LTOEXT) .pas .lpr .dpr .pp .r'+ 'c .res'#010+ #010+ @@ -1975,10 +1981,10 @@ const fpcmakeini : array[0..268,1..240] of char=( ' $(MKDIRTREE) $(COMPILER_UNITTARGETDIR)'#010+ #010+ '$(COMPILER_TARGETDIR):'#010+ - ' $(MKDIRTREE) $(COMPILER_TARGETDIR)'#010+ + ' ','$(MKDIRTREE) $(COMPILER_TARGETDIR)'#010+ #010+ '%$(PPUEXT): %.pp'#010+ - ' ',' $(COMPILER) $<'#010+ + ' $(COMPILER) $<'#010+ ' $(EXECPPAS)'#010+ #010+ '%$(PPUEXT): %.pas'#010+ @@ -1990,10 +1996,10 @@ const fpcmakeini : array[0..268,1..240] of char=( ' $(EXECPPAS)'#010+ #010+ '%$(EXEEXT): %.pas'#010+ - ' $(COMPILER) $<'#010+ + ' ',' $(COMPILER) $<'#010+ ' $(EXECPPAS)'#010+ #010+ - '%$(EXEEXT): %.','lpr'#010+ + '%$(EXEEXT): %.lpr'#010+ ' $(COMPILER) $<'#010+ ' $(EXECPPAS)'#010+ #010+ @@ -2004,21 +2010,21 @@ const fpcmakeini : array[0..268,1..240] of char=( '%.res: %.rc'#010+ ' windres -i $< -o $@'#010+ #010+ - '# Search paths for .ppu, .pp, .pas, .lpr, .dpr'#010+ - 'vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILE','R_INCLUDEDIR)'#010+ + '# Search paths for .ppu, .pp, .pa','s, .lpr, .dpr'#010+ + 'vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)'#010+ 'vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)'#010+ 'vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)'#010+ - 'vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)'#010+ + 'vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)',#010+ 'vpath %.inc $(COMPILER_INCLUDEDIR)'#010+ - 'vpath %$(OEXT) $(COM','PILER_UNITTARGETDIR)'#010+ + 'vpath %$(OEXT) $(COMPILER_UNITTARGETDIR)'#010+ 'vpath %$(LTOEXT) $(COMPILER_UNITTARGETDIR)'#010+ 'vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)'#010+ #010+ '[sharedrules]'#010+ - '#####################################################################'#010+ - '# Library'#010+ - '######################################','##############################'+ + '##############################################################','######'+ '#'#010+ + '# Library'#010+ + '#####################################################################'#010+ #010+ '.PHONY: fpc_shared'#010+ #010+ @@ -2028,37 +2034,37 @@ const fpcmakeini : array[0..268,1..240] of char=( 'SHARED_LIBVERSION=$(FPC_VERSION)'#010+ 'endif'#010+ #010+ - 'ifndef SHARED_LIBNAME'#010+ + 'ifndef SHARED_LIBNAME'#010, 'SHARED_LIBNAME=$(PACKAGE_NAME)'#010+ 'endif'#010+ #010+ - 'ifndef SHARED_FULL','NAME'#010+ + 'ifndef SHARED_FULLNAME'#010+ 'SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSIO'+ 'N)$(SHAREDLIBEXT)'#010+ 'endif'#010+ #010+ '# Default sharedlib units are all unit objects'#010+ 'ifndef SHARED_LIBUNITS'#010+ - 'SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS)'#010+ - 'override SHAR','ED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED'+ - '_LIBUNITS))'#010+ + 'SHARED_LIBUNIT','S:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS)'#010+ + 'override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_L'+ + 'IBUNITS))'#010+ 'endif'#010+ #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$(CO','MPILER_UNITTARGETDIR)'+ - ' -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR) -P$(BINUTILSPREFIX)'#010+ + 'ifneq ($(SHARED_B','UILD),n)'#010+ + ' $(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -'+ + 'o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR) -P$(BINUTILSPREFIX)'#010+ 'endif'#010+ 'else'#010+ ' @$(ECHO) Shared Libraries not supported'#010+ 'endif'#010+ #010+ 'fpc_shared_install:'#010+ - 'ifneq ($(SHARED_BUILD),n)'#010+ + 'ifneq (','$(SHARED_BUILD),n)'#010+ 'ifneq ($(SHARED_LIBUNITS),)'#010+ - 'ifneq ($(','wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),)'#010+ + 'ifneq ($(wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),)'#010+ ' $(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INST'+ 'ALL_SHAREDDIR)'#010+ 'endif'#010+ @@ -2066,7 +2072,7 @@ const fpcmakeini : array[0..268,1..240] of char=( 'endif'#010+ #010+ '[installrules]'#010+ - '################################################################','####'+ + '########','############################################################'+ '#'#010+ '# Install rules'#010+ '#####################################################################'#010+ @@ -2074,8 +2080,8 @@ const fpcmakeini : array[0..268,1..240] of char=( '.PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall'#010+ #010+ 'ifdef INSTALL_UNITS'#010+ - 'override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS))'#010+ - 'end','if'#010+ + 'override INST','ALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS))'#010+ + 'endif'#010+ #010+ 'ifdef INSTALL_BUILDUNIT'#010+ 'override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$'+ @@ -2083,29 +2089,29 @@ const fpcmakeini : array[0..268,1..240] of char=( 'endif'#010+ #010+ 'ifdef INSTALLPPUFILES'#010+ - '# Avoid getting the same name twice as some install EXE fail'#010+ - '# in this case, happends for inst','ance for OS/2 target'#010+ + '# Avoid getting the same name twice as',' some install EXE fail'#010+ + '# in this case, happends for instance for OS/2 target'#010+ 'ifneq ($(IMPORTLIBPREFIX)-$(STATICLIBEXT),$(STATICLIBPREFIX)-$(STATICL'+ 'IBEXT))'#010+ 'override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFI'+ - 'LES)) $(subst $(PPUEXT),$(LTOEXT),$(INSTALLPPUFILES)) $(addprefix $(ST'+ - 'A','TICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))'+ + 'LES)) $(subst $','(PPUEXT),$(LTOEXT),$(INSTALLPPUFILES)) $(addprefix $('+ + 'STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))'+ ') $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(I'+ 'NSTALLPPUFILES)))'#010+ 'else'#010+ - 'override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFI'+ - 'LES)) $(su','bst $(PPUEXT),$(LTOEXT),$(INSTALLPPUFILES)) $(addprefix $('+ + 'override INSTALLPPULINKF','ILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPU'+ + 'FILES)) $(subst $(PPUEXT),$(LTOEXT),$(INSTALLPPUFILES)) $(addprefix $('+ 'STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))'+ ')'#010+ 'endif'#010+ #010+ 'ifneq ($(UNITTARGETDIRPREFIX),)'#010+ - 'override INSTALLPPUFILENAMES:=$(notdir $(INSTALLPPUFILES))'#010+ - 'override INS','TALLPPULINKFILENAMES:=$(notdir $(INSTALLPPULINKFILES))'#010+ + 'override INSTAL','LPPUFILENAMES:=$(notdir $(INSTALLPPUFILES))'#010+ + 'override INSTALLPPULINKFILENAMES:=$(notdir $(INSTALLPPULINKFILES))'#010+ 'override INSTALLPPUFILES=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLP'+ 'PUFILENAMES))'#010+ - 'override INSTALLPPULINKFILES=$(wildcard $(addprefix $(UNITTARGETDIRPRE'+ - 'FIX),$(INSTALLPPULINKFILENAMES)','))'#010+ + 'override INSTALLPPULINKFILES=$(wildcard $(add','prefix $(UNITTARGETDIRP'+ + 'REFIX),$(INSTALLPPULINKFILENAMES)))'#010+ 'endif'#010+ '# Implicitly install Package.fpc'#010+ 'override INSTALL_CREATEPACKAGEFPC=1'#010+ @@ -2113,41 +2119,41 @@ const fpcmakeini : array[0..268,1..240] of char=( #010+ 'ifdef INSTALLEXEFILES'#010+ 'ifneq ($(TARGETDIRPREFIX),)'#010+ - 'override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(notdir $(IN'+ - 'STALLEXEFILES)))'#010+ + 'override INSTALLEXEFILES:=$(addprefix $(TARGETDIR','PREFIX),$(notdir $('+ + 'INSTALLEXEFILES)))'#010+ 'endif'#010+ 'endif'#010+ #010+ - 'fpc_i','nstall: all $(INSTALLTARGET)'#010+ + 'fpc_install: all $(INSTALLTARGET)'#010+ 'ifdef INSTALLEXEFILES'#010+ ' $(MKDIR) $(INSTALL_BINDIR)'#010+ ' $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR)'#010+ 'endif'#010+ 'ifdef INSTALL_CREATEPACKAGEFPC'#010+ - 'ifdef FPCMAKE'#010+ - '# If the fpcpackage variable is set then cre','ate and install Package.'+ - 'fpc,'#010+ + 'if','def FPCMAKE'#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+ + ' $(FPCMAKE) -p -T$(CPU_TARGET)-$(OS_TA','RGET) Makefile.fpc'#010+ ' $(MKDIR) $(INSTALL_UNITDIR)'#010+ - ' ',' $(INSTALL) 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_UNITD','IR)'#010+ 'ifneq ($(INSTALLPPULINKFILES),)'#010+ - ' $(INSTALL) $','(INSTALLPPULINKFILES) $(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+ - 'ifdef inUnix'#010+ - ' ln -sf $(LIB_FULLNAME) $(INSTALL_LIBDIR)/$(LIB_','NAME)'#010+ + 'ifdef inUnix',#010+ + ' ln -sf $(LIB_FULLNAME) $(INSTALL_LIBDIR)/$(LIB_NAME)'#010+ 'endif'#010+ 'endif'#010+ 'endif'#010+ @@ -2157,16 +2163,16 @@ const fpcmakeini : array[0..268,1..240] of char=( 'endif'#010+ #010+ 'fpc_sourceinstall: distclean'#010+ - ' $(MKDIR) $(INSTALL_SOURCEDIR)'#010+ - ' $(COPYTREE) $(BASEDIR)/','* $(INSTALL_SOURCEDIR)'#010+ + ' $(MKD','IR) $(INSTALL_SOURCEDIR)'#010+ + ' $(COPYTREE) $(BASEDIR)/* $(INSTALL_SOURCEDIR)'#010+ #010+ 'fpc_exampleinstall: $(EXAMPLEINSTALLTARGET) $(addsuffix _distclean,$(T'+ 'ARGET_EXAMPLEDIRS))'#010+ 'ifdef HASEXAMPLES'#010+ ' $(MKDIR) $(INSTALL_EXAMPLEDIR)'#010+ 'endif'#010+ - 'ifdef EXAMPLESOURCEFILES'#010+ - ' $(COPY) $(EXAMPLESOURCEFILES) ','$(INSTALL_EXAMPLEDIR)'#010+ + 'ifdef E','XAMPLESOURCEFILES'#010+ + ' $(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR)'#010+ 'endif'#010+ 'ifdef TARGET_EXAMPLEDIRS'#010+ ' $(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EX'+ @@ -2174,8 +2180,9 @@ const fpcmakeini : array[0..268,1..240] of char=( 'endif'#010+ #010+ '[distinstallrules]'#010+ - '#####################################################################'#010+ - '# Dist Inst','all'#010+ + '#########################','###########################################'+ + '#'#010+ + '# Dist Install'#010+ '#####################################################################'#010+ #010+ '.PHONY: fpc_distinstall'#010+ @@ -2184,16 +2191,15 @@ const fpcmakeini : array[0..268,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+ - '# subdir, because the deltree can'#039't see the wh','ole tree to remove'+ - #010+ + '# Temporary path to pack a file, can only use a si','ngle deep'#010+ + '# subdir, because the deltree can'#039't see the whole tree to remove'#010+ 'ifndef PACKDIR'#010+ 'ifndef inUnix'#010+ 'PACKDIR=$(BASEDIR)/../fpc-pack'#010+ @@ -2204,10 +2210,10 @@ const fpcmakeini : array[0..268,1..240] of char=( #010+ '# Maybe create default zipname from packagename'#010+ 'ifndef ZIPNAME'#010+ - 'ifdef DIST_ZIPNAME'#010+ + 'if','def DIST_ZIPNAME'#010+ 'ZIPNAME=$(DIST_ZIPNAME)'#010+ 'else'#010+ - 'ZIPNAME=$(','PACKAGE_NAME)'#010+ + 'ZIPNAME=$(PACKAGE_NAME)'#010+ 'endif'#010+ 'endif'#010+ #010+ @@ -2218,13 +2224,13 @@ const fpcmakeini : array[0..268,1..240] of char=( '# ZipTarget'#010+ 'ifndef ZIPTARGET'#010+ 'ifdef DIST_ZIPTARGET'#010+ - 'ZIPTARGET=DIST_ZIPTARGET'#010+ + 'ZIPTARGET=DIST_ZI','PTARGET'#010+ 'else'#010+ 'ZIPTARGET=install'#010+ 'endif'#010+ 'endif'#010+ #010+ - '# Use tar by',' default under linux'#010+ + '# Use tar by default under linux'#010+ 'ifndef USEZIP'#010+ 'ifdef inUnix'#010+ 'USETAR=1'#010+ @@ -2236,9 +2242,9 @@ const fpcmakeini : array[0..268,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 run in the',' current OS so fix'#010+ '# the path separator'#010+ - 'ifdef USEZIPWRAP','PER'#010+ + 'ifdef USEZIPWRAPPER'#010+ 'ZIPPATHSEP=$(PATHSEP)'#010+ 'ZIPWRAPPER=$(subst /,$(PATHSEP),$(DIST_DESTDIR)/fpczip$(SRCBATCHEXT))'#010+ 'else'#010+ @@ -2246,39 +2252,39 @@ const fpcmakeini : array[0..268,1..240] of char=( 'endif'#010+ #010+ '# Create commands to create the zip/tar file'#010+ - 'ZIPCMD_CDPACK:=cd $(subst /,$(ZIPPATHSEP),$(PACKDIR))'#010+ - 'ZIPCMD_CDBASE:=cd $(','subst /,$(ZIPPATHSEP),$(BASEDIR))'#010+ + 'ZIPCMD_CDPACK:=cd ','$(subst /,$(ZIPPATHSEP),$(PACKDIR))'#010+ + 'ZIPCMD_CDBASE:=cd $(subst /,$(ZIPPATHSEP),$(BASEDIR))'#010+ 'ifdef USETAR'#010+ 'ZIPDESTFILE:=$(DIST_DESTDIR)/$(FULLZIPNAME)$(TAREXT)'#010+ 'ZIPCMD_ZIP:=$(TARPROG) c$(TAROPT)f $(ZIPDESTFILE) *'#010+ 'else'#010+ - 'ZIPDESTFILE:=$(DIST_DESTDIR)/$(FULLZIPNAME)$(ZIPEXT)'#010+ - 'ZIPCMD_ZIP:=$(subst /,$(ZIPPAT','HSEP),$(ZIPPROG)) -Dr $(ZIPOPT) $(ZIPD'+ - 'ESTFILE) *'#010+ + 'ZIPDESTFILE:=$(DIST_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+ + ' $(D','EL) $(ZIPDESTFILE)'#010+ 'ifdef USEZIPWRAPPER'#010+ - '# Handle gecho se','parate as we need to espace \ with \\'#010+ + '# Handle gecho separate as we need to espace \ with \\'#010+ 'ifneq ($(ECHOREDIR),echo)'#010+ ' $(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDPACK))" > $(ZIPWRAPPE'+ 'R)'#010+ - ' $(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_ZIP))" >> $(ZIPWRAPPER)'+ - #010+ - ' $(ECHOREDIR) -e "$(subst',' \,\\,$(ZIPCMD_CDBASE))" >> $(ZIPWRA'+ - 'PPER)'#010+ + ' $(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_','ZIP))" >> $(ZIPWRAPPE'+ + 'R)'#010+ + ' $(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDBASE))" >> $(ZIPWRAPP'+ + 'ER)'#010+ 'else'#010+ ' echo $(ZIPCMD_CDPACK) > $(ZIPWRAPPER)'#010+ ' echo $(ZIPCMD_ZIP) >> $(ZIPWRAPPER)'#010+ - ' echo $(ZIPCMD_CDBASE) >> $(ZIPWRAPPER)'#010+ + ' echo $(ZIPCMD_CDBASE) >> $(ZIPWRAPPER)'#010, 'endif'#010+ 'ifdef inUnix'#010+ ' /bin/sh $(ZIPWRAPPER)'#010+ 'else'#010+ - 'if','def RUNBATCH'#010+ + 'ifdef RUNBATCH'#010+ ' $(RUNBATCH) $(ZIPWRAPPER)'#010+ 'else'#010+ ' $(ZIPWRAPPER)'#010+ @@ -2287,64 +2293,65 @@ const fpcmakeini : array[0..268,1..240] of char=( ' $(DEL) $(ZIPWRAPPER)'#010+ 'else'#010+ ' $(ZIPCMD_CDPACK) ; $(ZIPCMD_ZIP) ; $(ZIPCMD_CDBASE)'#010+ - 'endif'#010+ + 'endi','f'#010+ ' $(DELTREE) $(PACKDIR)'#010+ #010+ 'fpc_zipsourceinstall:'#010+ - ' ',' $(MAKE) fpc_zipinstall ZIPTARGET=sourceinstall ZIPSUFFIX=$(Z'+ - 'IPSOURCESUFFIX)'#010+ + ' $(MAKE) fpc_zipinstall ZIPTARGET=sourceinstall ZIPSUFFIX=$(ZIP'+ + 'SOURCESUFFIX)'#010+ #010+ 'fpc_zipexampleinstall:'#010+ 'ifdef HASEXAMPLES'#010+ - ' $(MAKE) fpc_zipinstall ZIPTARGET=exampleinstall ZIPSUFFIX=$(ZI'+ - 'PEXAMPLESUFFIX)'#010+ + ' $(MAKE) fpc_zipinstall ZIPTARGET=exampleinstall ZIP','SUFFIX=$('+ + 'ZIPEXAMPLESUFFIX)'#010+ 'endif'#010+ #010+ 'fpc_zipdistinstall:'#010+ - ' ',' $(MAKE) fpc_zipinstall ZIPTARGET=distinstall'#010+ + ' $(MAKE) fpc_zipinstall ZIPTARGET=distinstall'#010+ #010+ #010+ '[cleanrules]'#010+ '#####################################################################'#010+ '# Clean rules'#010+ - '#####################################################################'#010+ + '##################################','##################################'+ + '#'#010+ #010+ - '.PHONY: fpc_clean f','pc_cleanall fpc_distclean'#010+ + '.PHONY: fpc_clean fpc_cleanall fpc_distclean'#010+ #010+ 'ifdef EXEFILES'#010+ 'override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES'+ '))'#010+ - 'override CLEANEXEDBGFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEDB'+ - 'GFILES))'#010+ + 'override CLEANEXEDBGFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXED', + 'BGFILES))'#010+ 'endif'#010+ #010+ 'ifdef CLEAN_PROGRAMS'#010+ - 'override CLEANEXEF','ILES+=$(addprefix $(TARGETDIRPREFIX),$(addsuffix $'+ - '(EXEEXT), $(CLEAN_PROGRAMS)))'#010+ + 'override CLEANEXEFILES+=$(addprefix $(TARGETDIRPREFIX),$(addsuffix $(E'+ + 'XEEXT), $(CLEAN_PROGRAMS)))'#010+ 'override CLEANEXEDBGFILES+=$(addprefix $(TARGETDIRPREFIX),$(addsuffix '+ - '$(EXEDBGEXT), $(CLEAN_PROGRAMS)))'#010+ + '$(EXEDBGEXT), $(CLEAN_PROGRAMS)))'#010, 'endif'#010+ #010+ 'ifdef CLEAN_UNITS'#010+ - 'override CLEANPPUFILES+=$(addsu','ffix $(PPUEXT),$(CLEAN_UNITS))'#010+ + 'override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))'#010+ 'endif'#010+ #010+ 'ifdef CLEANPPUFILES'#010+ 'override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)'+ - ') $(subst $(PPUEXT),$(LTOEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLI'+ - 'BPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT)',',$(CLEANPPUFILES))) $(addp'+ + ') $(subst $(PPUEXT),$(LTOEXT),$(CLEANPPUFILES)) $(addpre','fix $(STATIC'+ + 'LIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addp'+ 'refix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUF'+ 'ILES)))'#010+ 'ifdef DEBUGSYMEXT'#010+ - 'override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPP'+ - 'UFILES))'#010+ + 'override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$','(CLEAN'+ + 'PPUFILES))'#010+ 'endif'#010+ - 'override CLEANPPUFILENAMES:=$(CLE','ANPPUFILES)'#010+ + 'override CLEANPPUFILENAMES:=$(CLEANPPUFILES)'#010+ 'override CLEANPPUFILES=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFI'+ 'LENAMES))'#010+ 'override CLEANPPULINKFILENAMES:=$(CLEANPPULINKFILES)'#010+ - 'override CLEANPPULINKFILES=$(wildcard $(addprefix $(UNITTARGETDIRPREFI'+ - 'X),$(CLEANPPULINKFILENAME','S)))'#010+ + 'override CLEANPPULINKFILES=$(wildcard $','(addprefix $(UNITTARGETDIRPRE'+ + 'FIX),$(CLEANPPULINKFILENAMES)))'#010+ 'endif'#010+ #010+ 'fpc_clean: $(CLEANTARGET)'#010+ @@ -2352,61 +2359,63 @@ const fpcmakeini : array[0..268,1..240] of char=( ' -$(DEL) $(CLEANEXEFILES)'#010+ 'endif'#010+ '# DELTREE instead of DEL because on Mac OS X these are directories'#010+ - 'ifdef CLEANEXEDBGFILES'#010+ + 'ifdef CLEANEXEDBGFIL','ES'#010+ ' -$(DELTREE) $(CLEANEXEDBGFILES)'#010+ 'endif'#010+ - 'ifdef C','LEANPPUFILES'#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+ + ' -$(DEL) $(addprefix $(UNITTARGE','TDIRPREFIX),$(CLEANRSTFILES))'+ + #010+ 'endif'#010+ 'ifdef CLEAN_FILES'#010+ - ' ',' -$(DEL) $(CLEAN_FILES)'#010+ + ' -$(DEL) $(CLEAN_FILES)'#010+ 'endif'#010+ 'ifdef LIB_NAME'#010+ ' -$(DEL) $(LIB_NAME) $(LIB_FULLNAME)'#010+ 'endif'#010+ ' -$(DEL) $(FPCMADE) *$(FULL_TARGET).fpm Package.fpc *$(ASMEXT)'#010+ - ' -$(DEL) $(FPCEXTFILE) $(REDIRFILE) script*.res link*.res *_scr', - 'ipt.res *_link.res'#010+ + ' -$(DEL',') $(FPCEXTFILE) $(REDIRFILE) script*.res link*.res *_s'+ + 'cript.res *_link.res'#010+ ' -$(DEL) $(PPAS) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BA'+ 'TCHEXT)'#010+ #010+ 'fpc_cleanall: $(CLEANTARGET)'#010+ 'ifdef CLEANEXEFILES'#010+ ' -$(DEL) $(CLEANEXEFILES)'#010+ - 'endif'#010+ + 'endi','f'#010+ 'ifdef COMPILER_UNITTARGETDIR'#010+ 'ifdef CLEANPPUFILES'#010+ - ' ',' -$(DEL) $(CLEANPPUFILES)'#010+ + ' -$(DEL) $(CLEANPPUFILES)'#010+ 'endif'#010+ 'ifneq ($(CLEANPPULINKFILES),)'#010+ ' -$(DEL) $(CLEANPPULINKFILES)'#010+ 'endif'#010+ 'ifdef CLEANRSTFILES'#010+ - ' -$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))'#010+ + ' -$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEA','NRSTFILES))'+ + #010+ 'endif'#010+ 'endif'#010+ 'ifdef CLEAN_FILES'#010+ - ' -$(DEL',') $(CLEAN_FILES)'#010+ + ' -$(DEL) $(CLEAN_FILES)'#010+ 'endif'#010+ ' -$(DELTREE) units'#010+ ' -$(DELTREE) bin'#010+ ' -$(DEL) *$(OEXT) *$(LTOEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *'+ - '$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)'#010+ + '$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEX','T)'#010+ 'ifneq ($(PPUEXT),.ppu)'#010+ - ' -$(DEL) *.o *.ppu *.a'#010, + ' -$(DEL) *.o *.ppu *.a'#010+ 'endif'#010+ ' -$(DELTREE) *$(SMARTEXT)'#010+ ' -$(DEL) fpcmade.* Package.fpc *.fpm'#010+ ' -$(DEL) $(FPCEXTFILE) $(REDIRFILE) script*.res link*.res *_scr'+ 'ipt.res *_link.res'#010+ - ' -$(DEL) $(PPAS) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(','B'+ - 'ATCHEXT)'#010+ + ' -$(D','EL) $(PPAS) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$('+ + 'BATCHEXT)'#010+ 'ifdef AOUTEXT'#010+ ' -$(DEL) *$(AOUTEXT)'#010+ 'endif'#010+ @@ -2415,116 +2424,115 @@ const fpcmakeini : array[0..268,1..240] of char=( 'endif'#010+ 'ifdef LOCALFPMAKEBIN'#010+ ' -$(DEL) $(LOCALFPMAKEBIN)'#010+ - ' -$(DEL) $(FPMAKEBINOBJ)'#010+ + ' -$(DEL)',' $(FPMAKEBINOBJ)'#010+ 'endif'#010+ #010+ 'fpc_distclean: cleanall'#010+ #010+ #010+ - '[basei','nforules]'#010+ + '[baseinforules]'#010+ '#####################################################################'#010+ '# Base info rules'#010+ '#####################################################################'#010+ #010+ - '.PHONY: fpc_baseinfo'#010+ + '.PHONY: fpc_bas','einfo'#010+ #010+ 'override INFORULES+=fpc_baseinfo'#010+ #010+ 'fpc_baseinfo:'#010+ - ' ',' @$(ECHO)'#010+ + ' @$(ECHO)'#010+ ' @$(ECHO) == Package info =='#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.......... $(FPC)'#010+ ' @$(ECHO) FPC Version.. $(FPC_VERSION)'#010+ ' @$(ECHO) Source CPU... $(CPU_SOURCE)'#010+ ' @$(ECHO) Target CPU... $(CPU_TARGET)'#010+ - ' @$(ECHO) Source OS.... $(OS_SOURCE)'#010+ - ' @$(ECHO) Ta','rget OS.... $(OS_TARGET)'#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) SourceSuffix. $(SOURCESUFFIX)'#010+ - ' @$(ECHO) TargetSuffix. $(TARGETSUFFIX)'#010+ - ' @$(ECHO) FPC fpm','ake... $(FPCFPMAKE)'#010+ + ' @$(ECHO) ',' TargetSuffix. $(TARGETSUFFIX)'#010+ + ' @$(ECHO) FPC fpmake... $(FPCFPMAKE)'#010+ ' @$(ECHO)'#010+ ' @$(ECHO) == Directory info =='#010+ ' @$(ECHO)'#010+ ' @$(ECHO) Required pkgs... $(REQUIRE_PACKAGES)'#010+ ' @$(ECHO)'#010+ - ' @$(ECHO) Basedir......... $(BASEDIR)'#010+ - ' @$(ECHO) FPCDir.....','..... $(FPCDIR)'#010+ + ' @$(ECHO) B','asedir......... $(BASEDIR)'#010+ + ' @$(ECHO) FPCDir.......... $(FPCDIR)'#010+ ' @$(ECHO) CrossBinDir..... $(CROSSBINDIR)'#010+ ' @$(ECHO) UnitsDir........ $(UNITSDIR)'#010+ ' @$(ECHO) PackagesDir..... $(PACKAGESDIR)'#010+ ' @$(ECHO)'#010+ - ' @$(ECHO) GCC library..... $(GCCLIBDIR)'#010+ - ' @$(E','CHO) Other library... $(OTHERLIBDIR)'#010+ + ' ',' @$(ECHO) GCC library..... $(GCCLIBDIR)'#010+ + ' @$(ECHO) Other library... $(OTHERLIBDIR)'#010+ ' @$(ECHO)'#010+ ' @$(ECHO) == Tools info =='#010+ ' @$(ECHO)'#010+ ' @$(ECHO) As........ $(AS)'#010+ ' @$(ECHO) Ld........ $(LD)'#010+ - ' @$(ECHO) Ar........ $(AR)'#010+ - ' @$(ECHO) Rc........',' $(RC)'#010+ + ' ',' @$(ECHO) Ar........ $(AR)'#010+ + ' @$(ECHO) Rc........ $(RC)'#010+ ' @$(ECHO)'#010+ ' @$(ECHO) Mv........ $(MVPROG)'#010+ ' @$(ECHO) Cp........ $(CPPROG)'#010+ ' @$(ECHO) Rm........ $(RMPROG)'#010+ ' @$(ECHO) GInstall.. $(GINSTALL)'#010+ - ' @$(ECHO) Echo...... $(ECHO)'#010+ - ' @$(ECHO) She','ll..... $(SHELL)'#010+ + ' ',' @$(ECHO) Echo...... $(ECHO)'#010+ + ' @$(ECHO) Shell..... $(SHELL)'#010+ ' @$(ECHO) Date...... $(DATE)'#010+ ' @$(ECHO) FPCMake... $(FPCMAKE)'#010+ ' @$(ECHO) PPUMove... $(PPUMOVE)'#010+ ' @$(ECHO) Zip....... $(ZIPPROG)'#010+ - ' @$(ECHO)'#010+ + ' @$','(ECHO)'#010+ ' @$(ECHO) == Object info =='#010+ - ' @$(EC','HO)'#010+ + ' @$(ECHO)'#010+ ' @$(ECHO) Target Loaders........ $(TARGET_LOADERS)'#010+ ' @$(ECHO) Target Units.......... $(TARGET_UNITS)'#010+ - ' @$(ECHO) Target Implicit Units. $(TARGET_IMPLICITUNITS)'#010+ - ' @$(ECHO) Target Programs....... $(TARGET_PROGR','AMS)'#010+ + ' @$(ECHO) Target Implicit Units. $(TARGET_IMPLICITUNITS)',#010+ + ' @$(ECHO) Target Programs....... $(TARGET_PROGRAMS)'#010+ ' @$(ECHO) Target Dirs........... $(TARGET_DIRS)'#010+ ' @$(ECHO) Target Examples....... $(TARGET_EXAMPLES)'#010+ - ' @$(ECHO) Target ExampleDirs.... $(TARGET_EXAMPLEDIRS)'#010+ + ' @$(ECHO) Target ExampleDirs.... $(TARGET_EXAMPLEDIRS)'#010, ' @$(ECHO)'#010+ - ' @$(ECHO) Clean Units......... ','$(CLEAN_UNITS)'#010+ + ' @$(ECHO) Clean Units......... $(CLEAN_UNITS)'#010+ ' @$(ECHO) Clean Files......... $(CLEAN_FILES)'#010+ ' @$(ECHO)'#010+ ' @$(ECHO) Install Units....... $(INSTALL_UNITS)'#010+ - ' @$(ECHO) Install Files....... $(INSTALL_FILES)'#010+ + ' @$(ECHO) Install Files....... $(I','NSTALL_FILES)'#010+ ' @$(ECHO)'#010+ - ' @$(ECHO) == Inst','all info =='#010+ + ' @$(ECHO) == Install info =='#010+ ' @$(ECHO)'#010+ ' @$(ECHO) DateStr.............. $(DATESTR)'#010+ ' @$(ECHO) ZipName.............. $(ZIPNAME)'#010+ - ' @$(ECHO) ZipPrefix............ $(ZIPPREFIX)'#010+ - ' @$(ECHO) ZipCrossPrefix....... $(ZIPCROSSPREFIX',')'#010+ + ' @$(ECHO) ZipPrefix............ $(ZIPPREFIX)'#010, + ' @$(ECHO) ZipCrossPrefix....... $(ZIPCROSSPREFIX)'#010+ ' @$(ECHO) ZipSuffix............ $(ZIPSUFFIX)'#010+ ' @$(ECHO) FullZipName.......... $(FULLZIPNAME)'#010+ ' @$(ECHO) Install FPC Package.. $(INSTALL_FPCPACKAGE)'#010+ - ' @$(ECHO)'#010+ - ' @$(ECHO) Install base dir..... $(INSTALL_B','ASEDIR)'#010+ + ' @$(E','CHO)'#010+ + ' @$(ECHO) Install base dir..... $(INSTALL_BASEDIR)'#010+ ' @$(ECHO) Install binary dir... $(INSTALL_BINDIR)'#010+ ' @$(ECHO) Install library dir.. $(INSTALL_LIBDIR)'#010+ ' @$(ECHO) Install units dir.... $(INSTALL_UNITDIR)'#010+ - ' @$(ECHO) Install source dir... $(INSTALL_SOURCED','IR)'#010+ + ' ',' @$(ECHO) Install source dir... $(INSTALL_SOURCEDIR)'#010+ ' @$(ECHO) Install doc dir...... $(INSTALL_DOCDIR)'#010+ ' @$(ECHO) Install example dir.. $(INSTALL_EXAMPLEDIR)'#010+ ' @$(ECHO) Install data dir..... $(INSTALL_DATADIR)'#010+ - ' @$(ECHO)'#010+ - ' @$(ECHO) Dist destination dir. ','$(DIST_DESTDIR)'#010+ + ' ',' @$(ECHO)'#010+ + ' @$(ECHO) Dist destination dir. $(DIST_DESTDIR)'#010+ ' @$(ECHO) Dist zip name........ $(DIST_ZIPNAME)'#010+ ' @$(ECHO)'#010+ #010+ '[inforules]'#010+ '#####################################################################'#010+ - '# Info rules'#010+ - '#######################################################','#############'+ - '#'#010+ + '# Info rules',#010+ + '#####################################################################'#010+ #010+ '.PHONY: fpc_info'#010+ #010+ @@ -2533,37 +2541,38 @@ const fpcmakeini : array[0..268,1..240] of char=( '[makefilerules]'#010+ '#####################################################################'#010+ '# Rebuild Makefile'#010+ - '#####################################################################'#010+ + '#####################','###############################################'+ + '#'#010+ #010+ - '.PHONY',': fpc_makefile fpc_makefiles fpc_makefile_sub1 fpc_makefile_su'+ - 'b2 \'#010+ + '.PHONY: fpc_makefile fpc_makefiles fpc_makefile_sub1 fpc_makefile_sub2'+ + ' \'#010+ ' fpc_makefile_dirs'#010+ #010+ 'fpc_makefile:'#010+ ' $(FPCMAKE) -w -T$(OS_TARGET) Makefile.fpc'#010+ #010+ 'fpc_makefile_sub1:'#010+ - 'ifdef TARGET_DIRS'#010+ - ' $(FPCMAKE) -w -T$(OS_TARGET) $(addsu','ffix /Makefile.fpc,$(TAR'+ - 'GET_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+ 'endif'#010+ #010+ - 'fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_'+ - 'EXAMPLEDIRS','))'#010+ + 'fpc_makefile_sub2: $(adds','uffix _makefile_dirs,$(TARGET_DIRS) $(TARGE'+ + 'T_EXAMPLEDIRS))'#010+ #010+ 'fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2'#010+ #010+ 'fpc_makefiles: fpc_makefile fpc_makefile_dirs'#010+ #010+ '[localmakefile]'#010+ - '#####################################################################'#010+ - '# Local Makefile'#010+ - '##############################','######################################'+ + '#############################################################','#######'+ '#'#010+ + '# Local Makefile'#010+ + '#####################################################################'#010+ #010+ 'ifneq ($(wildcard fpcmake.loc),)'#010+ 'include fpcmake.loc'#010+ @@ -2571,19 +2580,19 @@ const fpcmakeini : array[0..268,1..240] of char=( #010+ #010+ '[userrules]'#010+ - '#####################################################################'#010+ + '#####################################################################'#010, '# Users rules'#010+ - '##########################################','##########################'+ - '#'#010+ + '#####################################################################'#010+ #010+ '[lclrules]'#010+ '#####################################################################'#010+ '# LCL Rules'#010+ - '#####################################################################'#010+ + '##############################################################','######'+ + '#'#010+ #010+ '# LCL Platform'#010+ 'ifndef LCL_PLATFORM'#010+ - 'ifneq ($(fil','ter $(OS_TARGET),win32 win64),)'#010+ + 'ifneq ($(filter $(OS_TARGET),win32 win64),)'#010+ 'LCL_PLATFORM=win32'#010+ 'else'#010+ 'LCL_PLATFORM=gtk'#010+ @@ -2593,8 +2602,8 @@ const fpcmakeini : array[0..268,1..240] of char=( #010+ '# Check if the specified LCLDIR is correct'#010+ 'ifdef LCLDIR'#010+ - 'override LCLDIR:=$(subst \,/,$(LCLDIR))'#010+ - 'ifeq ($(wildcard $(LCLDIR)/units/$(LCL','_PLATFORM)),)'#010+ + 'override LCLDIR:=$(sub','st \,/,$(LCLDIR))'#010+ + 'ifeq ($(wildcard $(LCLDIR)/units/$(LCL_PLATFORM)),)'#010+ 'override LCLDIR=wrong'#010+ 'endif'#010+ 'else'#010+ @@ -2603,17 +2612,17 @@ const fpcmakeini : array[0..268,1..240] of char=( #010+ '# Check if the default LCLDIR is correct'#010+ 'ifdef DEFAULT_LCLDIR'#010+ - 'override LCLDIR:=$(subst \,/,$(DEFAULT_LCLDIR))'#010+ + 'override LCLDIR:=$(subst \,/,$(DEFAULT_LCLDIR)',')'#010+ 'ifeq ($(wildcard $(LCLDIR)/units/$(LCL_PLATFORM)),)'#010+ - 'ov','erride LCLDIR=wrong'#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)/lcl $(BASEDIR)))))'#010+ - 'ifeq ($(LCLDIR),',')'#010+ + ' $(addsuffix /units/$(LCL_','PLATFORM),$(BASEDIR)/lcl $(BASEDIR)))))'#010+ + 'ifeq ($(LCLDIR),)'#010+ 'override LCLDIR=wrong'#010+ 'endif'#010+ 'endif'#010+ @@ -2621,8 +2630,8 @@ const fpcmakeini : array[0..268,1..240] of char=( '# 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+ - 'ifeq ($(LCLDIR','),)'#010+ + ' $(addsuffix /lib/lazarus/','units/$(LCL_PLATFORM),/usr/local /usr))))'#010+ + 'ifeq ($(LCLDIR),)'#010+ 'override LCLDIR=wrong'#010+ 'endif'#010+ 'endif'#010+ @@ -2630,17 +2639,18 @@ const fpcmakeini : array[0..268,1..240] of char=( '# Generate dirs'#010+ 'override LCLUNITDIR=$(wildcard $(LCLDIR)/units/$(LCL_PLATFORM) $(LCLDI'+ 'R)/units)'#010+ - 'override LCLCOMPONENTDIR=$(wildcard $(LCLDIR)/.. $(LCLDIR)/../componen'+ - 'ts $(LCLDIR)/components)'#010+ - 'export LCL','DIR LCLUNITDIR LCLCOMPONENTDIR'#010+ + 'override LCLCOMPONENTDIR=$(wildcard $(LCLDIR)/.. ','$(LCLDIR)/../compon'+ + 'ents $(LCLDIR)/components)'#010+ + 'export LCLDIR LCLUNITDIR LCLCOMPONENTDIR'#010+ #010+ '# Add LCL dirs to paths'#010+ 'override REQUIRE_PACKAGESDIR+=$(LCLCOMPONENTDIR)'#010+ 'override COMPILER_UNITDIR+=$(LCLUNITDIR)'#010+ #010+ '[lclinforules]'#010+ - '#####################################################################'#010+ - '# LCL In','fo rules'#010+ + '######################','##############################################'+ + '#'#010+ + '# LCL Info rules'#010+ '#####################################################################'#010+ 'override INFORULES+=lclinfo'#010+ #010+ @@ -2648,68 +2658,68 @@ const fpcmakeini : array[0..268,1..240] of char=( #010+ 'lclinfo:'#010+ ' @$(ECHO) == LCL info =='#010+ - ' @$(ECHO)'#010+ - ' @$(ECHO) Platform............. $(LCL_PLATFORM)'#010, + ' @$(ECHO)'#010, + ' @$(ECHO) Platform............. $(LCL_PLATFORM)'#010+ ' @$(ECHO) LCLDIR............... $(LCLDIR)'#010+ ' @$(ECHO) LCL Unit dir......... $(LCLUNITDIR)'#010+ ' @$(ECHO) LCL Component dir.... $(LCLCOMPONENTDIR)'#010+ ' @$(ECHO)'#010+ #010+ - '[fpmakeprerules]'#010+ - '##########################################','##########################'+ - '#'#010+ + '[fp','makeprerules]'#010+ + '#####################################################################'#010+ '# fpmake prerules'#010+ '#####################################################################'#010+ 'FPMAKEBIN=fpmake$(SRCEXEEXT)'#010+ - 'FPMAKEBINOBJ=fpmake$(OEXT) fpmake$(LTOEXT)'#010+ + 'FPMAKEBINOBJ=fpmake$(OEXT) fpmake$(LTOE','XT)'#010+ 'LOCALFPMAKEBIN=.$(PATHSEP)$(FPMAKEBIN)'#010+ #010+ - '# Convert th','e OS_TARGET and CPU_TARGET options to fpmake'#039's --os '+ - 'and --cpu parameters'#010+ + '# Convert the OS_TARGET and CPU_TARGET options to fpmake'#039's --os an'+ + 'd --cpu parameters'#010+ 'ifdef OS_TARGET'#010+ 'FPC_TARGETOPT+=--os=$(OS_TARGET)'#010+ 'endif'#010+ 'ifdef CPU_TARGET'#010+ 'FPC_TARGETOPT+=--cpu=$(CPU_TARGET)'#010+ - 'endif'#010+ + 'endi','f'#010+ 'ifdef SUB_TARGET'#010+ - 'FPC_TARGETOPT+=--subtarget=$(SUB_TARG','ET)'#010+ + 'FPC_TARGETOPT+=--subtarget=$(SUB_TARGET)'#010+ 'endif'#010+ #010+ '# Get the location of the bootstrap-fpmkunit units'#010+ 'PACKAGEDIR_FPMKUNIT:=$(firstword $(subst /Makefile.fpc,,$(strip $(wild'+ - 'card $(addsuffix /fpmkunit/Makefile.fpc,$(PACKAGESDIR))))))'#010+ + 'card $(addsuffix /fpmkunit/Makefile.fpc,$(PACKAGESDI','R))))))'#010+ 'ifneq ($(PACKAGEDIR_FPMKUNIT),)'#010+ - 'UNITDIR_FPMAKE_F','PMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFF'+ - 'IX)'#010+ + 'UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX'+ + ')'#010+ 'override COMPILER_FPMAKE_UNITDIR=$(UNITDIR_FPMAKE_FPMKUNIT)'#010+ 'FPMKUNIT_SRC=$(PACKAGEDIR_FPMKUNIT)/src/fpmkunit.pp'#010+ - 'FPMKUNIT_PPU=$(UNITDIR_FPMAKE_FPMKUNIT)/fpmkunit.ppu'#010+ + 'FPMKUNIT_PPU=$(U','NITDIR_FPMAKE_FPMKUNIT)/fpmkunit.ppu'#010+ 'endif'#010+ #010+ - 'ifdef FPMAKE','_SKIP_CONFIG'#010+ + 'ifdef FPMAKE_SKIP_CONFIG'#010+ 'override FPMAKE_BUILD_OPT+=$(FPMAKE_SKIP_CONFIG)'#010+ 'endif'#010+ #010+ '[fpmakerules]'#010+ '#####################################################################'#010+ '# fpmake rules'#010+ - '#####################################################################'#010+ - '.P','HONY: fpc_fpmake fpc_fpmake_clean fpc_fpmake_install fpc_fpmake_ex'+ - 'ampleinstall'#010+ + '################','####################################################'+ + '#'#010+ + '.PHONY: fpc_fpmake fpc_fpmake_clean fpc_fpmake_install fpc_fpmake_exam'+ + 'pleinstall'#010+ #010+ '# Do not pass the Makefile'#039's unit and binary target locations. fpm'+ 'ake uses it'#039's own.'#010+ - 'override FPCOPT:=$(filter-out -FU%,$(FPCOPT))'#010+ - 'override FPCOPT:=$(filter-out',' -FE%,$(FPCOPT))'#010+ + 'override FPCOPT:=$(','filter-out -FU%,$(FPCOPT))'#010+ + 'override FPCOPT:=$(filter-out -FE%,$(FPCOPT))'#010+ '# Compose general fpmake-parameters'#010+ 'ifdef FPMAKEOPT'#010+ 'FPMAKE_OPT+=$(FPMAKEOPT)'#010+ 'endif'#010+ 'FPMAKE_OPT+=--localunitdir=$(FPCDIR)'#010+ - 'FPMAKE_OPT+=--globalunitdir=$(FPCDIR)/packages'#010+ + 'FPMAKE_OPT+=--globalunitdir=$(FPCDIR)/packages'#010, 'FPMAKE_OPT+=$(FPC_TARGETOPT)'#010+ - 'FPMAKE_OPT+=$(addprefix -o ',',$(FPCOPT))'#010+ + 'FPMAKE_OPT+=$(addprefix -o ,$(FPCOPT))'#010+ 'FPMAKE_OPT+=--compiler=$(FPC)'#010+ 'FPMAKE_OPT+=-bu'#010+ 'ifdef FPC_DOTTEDUNITS'#010+ @@ -2718,46 +2728,46 @@ const fpcmakeini : array[0..268,1..240] of char=( #010+ 'FPMAKE_INSTALL_OPT+=--unitinstalldir=$(INSTALL_UNITDIR)'#010+ 'ifdef UNIXHier'#010+ - 'FPMAKE_INSTALL_OPT+=--prefix=$(INSTALL_PREFIX)'#010+ - 'FPMAKE_INSTALL_OPT+','=--baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VER'+ - 'SION)'#010+ + 'FPMAKE_INS','TALL_OPT+=--prefix=$(INSTALL_PREFIX)'#010+ + 'FPMAKE_INSTALL_OPT+=--baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSI'+ + 'ON)'#010+ 'else'#010+ 'FPMAKE_INSTALL_OPT+=--prefix=$(INSTALL_BASEDIR)'#010+ 'endif'#010+ #010+ 'override ALLTARGET+=fpc_fpmake'#010+ - 'override INSTALLTARGET+=fpc_fpmake_install'#010+ - 'override EXAMPLEINSTALLTARGET+=fpc_fpmake_examplein','stall'#010+ + 'override INSTALLTARGET+=fpc_fpmake_ins','tall'#010+ + 'override EXAMPLEINSTALLTARGET+=fpc_fpmake_exampleinstall'#010+ '# If no fpmake exists and (dist)clean is called, do not try to build f'+ 'pmake, it will'#010+ '# most often fail because the dependencies are cleared.'#010+ - '# In case of a clean, simply do nothing'#010+ + '# In case of a clean, simply do nothi','ng'#010+ 'ifneq ($(wildcard $(LOCALFPMAKEBIN)),)'#010+ - 'override CLEAN','TARGET+=fpc_fpmake_clean'#010+ + 'override CLEANTARGET+=fpc_fpmake_clean'#010+ 'endif'#010+ #010+ '$(FPMKUNIT_PPU): $(FPMKUNIT_SRC)'#010+ ' $(MAKE) -C $(PACKAGEDIR_FPMKUNIT) bootstrap $(addprefix OP'+ 'T=,$(FPMAKE_BUILD_OPT))'#010+ #010+ - '$(FPMAKEBIN): fpmake.pp $(FPMKUNIT_PPU)'#010+ - ' $(FPCFPMAKE) fpmake.pp $(addpref','ix -Fu,$(COMPILER_FPMAKE_UNI'+ - 'TDIR)) $(FPMAKE_BUILD_OPT)'#010+ + '$(FPMAKEBIN): fpmake.pp ','$(FPMKUNIT_PPU)'#010+ + ' $(FPCFPMAKE) fpmake.pp $(addprefix -Fu,$(COMPILER_FPMAKE_UNITD'+ + 'IR)) $(FPMAKE_BUILD_OPT)'#010+ #010+ 'fpc_fpmake: $(FPMAKEBIN)'#010+ ' $(LOCALFPMAKEBIN) compile $(FPMAKE_OPT)'#010+ #010+ 'fpc_fpmake_clean: $(FPMAKEBIN)'#010+ - ' $(LOCALFPMAKEBIN) clean $(FPMAKE_OPT)'#010+ + ' $(LOCAL','FPMAKEBIN) clean $(FPMAKE_OPT)'#010+ #010+ - 'fpc_fpmake_install: $(FP','MAKEBIN)'#010+ + 'fpc_fpmake_install: $(FPMAKEBIN)'#010+ ' $(LOCALFPMAKEBIN) install $(FPMAKE_OPT) $(FPMAKE_INSTALL_O'+ 'PT)'#010+ #010+ '# This is not completely valid. Exampleinstall should only install the'+ ' examples, while'#010+ - '# fpmake -ie installs everything, including the examples. This also m', - 'eans that on'#010+ + '# fpmake -ie ','installs everything, including the examples. This also '+ + 'means that on'#010+ '# a distinstall fpmake install wil be called twice.'#010+ 'fpc_fpmake_exampleinstall: $(FPMAKEBIN)'#010+ ' $(LOCALFPMAKEBIN) install -ie $(FPMAKE_OPT) $(FPMAKE_INSTA'+ diff --git a/utils/fpcm/fpcmake.ini b/utils/fpcm/fpcmake.ini index 727370b46b..7532b429fa 100644 --- a/utils/fpcm/fpcmake.ini +++ b/utils/fpcm/fpcmake.ini @@ -1339,6 +1339,11 @@ ifeq ($(OS_TARGET),wasip1threads) EXEEXT=.wasm endif +# WASIp2 +ifeq ($(OS_TARGET),wasip2) +EXEEXT=.wasm +endif + # For 8.3 limited OS's the short suffixes # Otherwise use the full source/target names diff --git a/utils/fpcm/fpcmmain.pp b/utils/fpcm/fpcmmain.pp index edb2a5f3d1..426570f9b6 100644 --- a/utils/fpcm/fpcmmain.pp +++ b/utils/fpcm/fpcmmain.pp @@ -86,7 +86,7 @@ interface win64,wince,gba,nds,embedded,symbian,haiku,iphonesim, aix,java,android,nativent,msdos,wii,aros,dragonfly, win16,freertos,zxspectrum,msxdos,ios,amstradcpc,sinclairql, - wasip1,human68k,ps1,wasip1threads + wasip1,human68k,ps1,wasip1threads,wasip2 );} TOS = fpmkunit.TOS; {$else} @@ -103,7 +103,7 @@ interface win64,wince,gba,nds,embedded,symbian,nativent,iphonesim, wii,aix,java,android,msdos,aros,dragonfly,win16,freertos, zxspectrum,msxdos,ios,amstradcpc,sinclairql,wasip1,human68k,ps1, - wasip1threads + wasip1threads,wasip2 ); {$endif} @@ -135,7 +135,8 @@ interface 'win64','wince','gba','nds','embedded','symbian','nativent', 'iphonesim', 'wii', 'aix', 'java', 'android', 'msdos', 'aros', 'dragonfly', 'win16', 'freertos', 'zxspectrum', 'msxdos', - 'ios','amstradcpc','sinclairql','wasip1','human68k','ps1','wasip1threads' + 'ios','amstradcpc','sinclairql','wasip1','human68k','ps1','wasip1threads', + 'wasip2' ); OSSuffix : array[TOS] of string=( @@ -145,7 +146,8 @@ interface '_win64','_wince','_gba','_nds','_embedded','_symbian','_nativent', '_iphonesim','_wii','_aix','_java','_android','_msdos','_aros', '_dragonfly','_win16','_freertos','_zxspectrum','_msxdos', - '_ios','_amstradcpc','_sinclairql','_wasip1','_human68k','_ps1','_wasip1threads' + '_ios','_amstradcpc','_sinclairql','_wasip1','_human68k','_ps1','_wasip1threads', + '_wasip2' ); { This table is kept OS,Cpu because it is easier to maintain (PFV) } @@ -206,7 +208,8 @@ interface { wasip1 } ( false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, false, false, false, false, false, false), { human68k }( false, false, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false), { ps1 } ( false, false, false, false, false, false, false, false, false, false, false, false, true, false, false, false, false, false, false, false, false, false, false, false, false), - { wasip1threads } ( false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, false, false, false, false, false, false) + { wasip1threads } ( false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, false, false, false, false, false, false), + { wasip2 } ( false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, false, false, false, false, false, false) ); {$endif } type