* Bootstrap native version of fpmkunit when cross-compiling

git-svn-id: trunk@17375 -
This commit is contained in:
joost 2011-04-26 21:06:25 +00:00
parent d288592c5a
commit 2355125bd5
4 changed files with 138 additions and 23 deletions

View File

@ -1,5 +1,5 @@
#
# Don't edit, this file is generated by FPCMake Version 2.0.0 [2011/04/21]
# Don't edit, this file is generated by FPCMake Version 2.0.0 [2011/04/25]
#
default: all
MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-qnx i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-solaris x86_64-darwin x86_64-win64 x86_64-embedded arm-linux arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian powerpc64-linux powerpc64-darwin powerpc64-embedded avr-embedded armeb-linux armeb-embedded mipsel-linux
@ -9563,6 +9563,10 @@ makefiles: fpc_makefiles $(addsuffix _makefiles,$(TARGET_DIRS))
ifneq ($(wildcard fpcmake.loc),)
include fpcmake.loc
endif
fpmkunit_bootstrap:
ifdef CROSSCOMPILE
$(MAKE) -C fpmkunit bootstrap
endif
fpmkunit_all: fcl-base_all fcl-process_all paszlib_all
fpmkunit_debug: fcl-base_debug fcl-process_debug paszlib_debug
fpmkunit_smart: fcl-base_smart fcl-process_smart paszlib_smart
@ -9652,11 +9656,11 @@ fcl-net_smart: fcl-passrc_smart fcl-xml_smart fcl-async_smart
fcl-net_release: fcl-passrc_release fcl-xml_release fcl-async_release
fcl-net_shared: fcl-passrc_shared fcl-xml_shared fcl-async_shared
endif
fcl-web_all: fcl-db_all fcl-xml_all fcl-process_all httpd22_all fastcgi_all fcl-net_all fcl-json_all
fcl-web_debug: fcl-db_debug fcl-xml_debug fcl-process_debug httpd22_debug fastcgi_debug fcl-net_debug fcl-json_debug
fcl-web_smart: fcl-db_smart fcl-xml_smart fcl-process_smart httpd22_smart fastcgi_smart fcl-net_smart fcl-json_smart
fcl-web_release: fcl-db_release fcl-xml_release fcl-process_release httpd22_release fastcgi_release fcl-net_release fcl-json_release
fcl-web_shared: fcl-db_shared fcl-xml_shared fcl-process_shared httpd22_shared fastcgi_shared fcl-net_shared fcl-json_shared
fcl-web_all: fpmkunit_bootstrap fcl-db_all fcl-xml_all fcl-process_all httpd22_all fastcgi_all fcl-net_all fcl-json_all
fcl-web_debug: fpmkunit_bootstrap fcl-db_debug fcl-xml_debug fcl-process_debug httpd22_debug fastcgi_debug fcl-net_debug fcl-json_debug
fcl-web_smart: fpmkunit_bootstrap fcl-db_smart fcl-xml_smart fcl-process_smart httpd22_smart fastcgi_smart fcl-net_smart fcl-json_smart
fcl-web_release: fpmkunit_bootstrap fcl-db_release fcl-xml_release fcl-process_release httpd22_release fastcgi_release fcl-net_release fcl-json_release
fcl-web_shared: fpmkunit_bootstrap fcl-db_shared fcl-xml_shared fcl-process_shared httpd22_shared fastcgi_shared fcl-net_shared fcl-json_shared
ifneq ($(findstring $(OS_TARGET),linux freebsd openbsd netbsd win32 beos haiku),)
fcl-db_all: fcl-xml_all mysql_all ibase_all oracle_all odbc_all postgres_all sqlite_all pxlib_all
fcl-db_debug: fcl-xml_debug mysql_debug ibase_debug oracle_debug odbc_debug postgres_debug sqlite_debug pxlib_debug

View File

@ -74,6 +74,10 @@ fpcsubdir=packages
fpcdir=..
[rules]
fpmkunit_bootstrap:
ifdef CROSSCOMPILE
$(MAKE) -C fpmkunit bootstrap
endif
fpmkunit_all: fcl-base_all fcl-process_all paszlib_all
fpmkunit_debug: fcl-base_debug fcl-process_debug paszlib_debug
fpmkunit_smart: fcl-base_smart fcl-process_smart paszlib_smart
@ -174,11 +178,11 @@ fcl-net_release: fcl-passrc_release fcl-xml_release fcl-async_release
fcl-net_shared: fcl-passrc_shared fcl-xml_shared fcl-async_shared
endif
fcl-web_all: fcl-db_all fcl-xml_all fcl-process_all httpd22_all fastcgi_all fcl-net_all fcl-json_all
fcl-web_debug: fcl-db_debug fcl-xml_debug fcl-process_debug httpd22_debug fastcgi_debug fcl-net_debug fcl-json_debug
fcl-web_smart: fcl-db_smart fcl-xml_smart fcl-process_smart httpd22_smart fastcgi_smart fcl-net_smart fcl-json_smart
fcl-web_release: fcl-db_release fcl-xml_release fcl-process_release httpd22_release fastcgi_release fcl-net_release fcl-json_release
fcl-web_shared: fcl-db_shared fcl-xml_shared fcl-process_shared httpd22_shared fastcgi_shared fcl-net_shared fcl-json_shared
fcl-web_all: fpmkunit_bootstrap fcl-db_all fcl-xml_all fcl-process_all httpd22_all fastcgi_all fcl-net_all fcl-json_all
fcl-web_debug: fpmkunit_bootstrap fcl-db_debug fcl-xml_debug fcl-process_debug httpd22_debug fastcgi_debug fcl-net_debug fcl-json_debug
fcl-web_smart: fpmkunit_bootstrap fcl-db_smart fcl-xml_smart fcl-process_smart httpd22_smart fastcgi_smart fcl-net_smart fcl-json_smart
fcl-web_release: fpmkunit_bootstrap fcl-db_release fcl-xml_release fcl-process_release httpd22_release fastcgi_release fcl-net_release fcl-json_release
fcl-web_shared: fpmkunit_bootstrap fcl-db_shared fcl-xml_shared fcl-process_shared httpd22_shared fastcgi_shared fcl-net_shared fcl-json_shared
ifneq ($(findstring $(OS_TARGET),linux freebsd openbsd netbsd win32 beos haiku),)
fcl-db_all: fcl-xml_all mysql_all ibase_all oracle_all odbc_all postgres_all sqlite_all pxlib_all

View File

@ -1,8 +1,8 @@
#
# Don't edit, this file is generated by FPCMake Version 2.0.0 [2010/09/29]
# Don't edit, this file is generated by FPCMake Version 2.0.0 [2011/04/25]
#
default: all
MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-qnx i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-solaris x86_64-darwin x86_64-win64 x86_64-embedded arm-linux arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian powerpc64-linux powerpc64-darwin powerpc64-embedded avr-embedded armeb-linux armeb-embedded mipsel-linux
MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-qnx i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-solaris x86_64-darwin x86_64-win64 x86_64-embedded arm-linux arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian powerpc64-linux powerpc64-darwin powerpc64-embedded avr-embedded armeb-linux armeb-embedded mipsel-linux
BSDs = freebsd netbsd openbsd darwin
UNIXs = linux $(BSDs) solaris qnx haiku
LIMIT83fs = go32v2 os2 emx watcom
@ -107,23 +107,42 @@ FPC=$(PP)
endif
endif
ifndef FPC
DETERMINE_NATIVE_COMPILER=1
else
ifdef CROSSCOMPILE
ifndef FPCFPMAKE
DETERMINE_NATIVE_COMPILER=1
endif
endif
endif
ifdef DETERMINE_NATIVE_COMPILER
FPCPROG:=$(strip $(wildcard $(addsuffix /fpc$(SRCEXEEXT),$(SEARCHPATH))))
ifneq ($(FPCPROG),)
FPCPROG:=$(firstword $(FPCPROG))
ifneq ($(CPU_TARGET),)
FPC:=$(shell $(FPCPROG) -P$(CPU_TARGET) -PB)
FPCNATIVE:=$(shell $(FPCPROG) -P$(CPU_TARGET) -PB)
else
FPC:=$(shell $(FPCPROG) -PB)
FPCNATIVE:=$(shell $(FPCPROG) -PB)
endif
ifneq ($(findstring Error,$(FPC)),)
override FPC=$(firstword $(strip $(wildcard $(addsuffix /ppc386$(SRCEXEEXT),$(SEARCHPATH)))))
ifneq ($(findstring Error,$(FPCNATIVE)),)
override FPCNATIVE=$(firstword $(strip $(wildcard $(addsuffix /ppc386$(SRCEXEEXT),$(SEARCHPATH)))))
else
ifeq ($(strip $(wildcard $(FPC))),)
FPC:=$(firstword $(FPCPROG))
ifeq ($(strip $(wildcard $(FPCNATIVE))),)
FPCNATIVE:=$(firstword $(FPCPROG))
endif
endif
else
override FPC=$(firstword $(strip $(wildcard $(addsuffix /ppc386$(SRCEXEEXT),$(SEARCHPATH)))))
override FPCNATIVE=$(firstword $(strip $(wildcard $(addsuffix /ppc386$(SRCEXEEXT),$(SEARCHPATH)))))
endif
endif
ifndef FPC
FPC=$(FPCNATIVE)
endif
ifndef FPCFPMAKE
ifdef CROSSOMPILE
FPCFPMAKE=$(FPCNATIVE)
else
FPCFPMAKE=$(FPC)
endif
endif
override FPC:=$(subst $(SRCEXEEXT),,$(FPC))
@ -141,7 +160,7 @@ endif
ifndef FPC_VERSION
FPC_VERSION:=$(word 1,$(FPC_COMPILERINFO))
endif
export FPC FPC_VERSION FPC_COMPILERINFO
export FPC FPCFPMAKE FPC_VERSION FPC_COMPILERINFO
unexport CHECKDEPEND ALLDEPENDENCIES
ifndef CPU_TARGET
ifdef CPU_TARGET_DEFAULT
@ -266,6 +285,8 @@ endif
PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages $(FPCDIR)/packages/base $(FPCDIR)/packages/extra)
override PACKAGE_NAME=fpmkunit
override PACKAGE_VERSION=2.5.1
TARGET_UNITDIRBS=units_bs/$(SOURCESUFFIX)
CLEAN_FILES+=units_bs/$(SOURCESUFFIX)/fpmkunit.ppu units_bs/$(SOURCESUFFIX)/fpmkunit.rst units_bs/$(SOURCESUFFIX)/fpmkunit.o
ifeq ($(FULL_TARGET),i386-linux)
override TARGET_UNITS+=fpmkunit
endif
@ -377,6 +398,9 @@ endif
ifeq ($(FULL_TARGET),powerpc-embedded)
override TARGET_UNITS+=fpmkunit
endif
ifeq ($(FULL_TARGET),powerpc-wii)
override TARGET_UNITS+=fpmkunit
endif
ifeq ($(FULL_TARGET),sparc-linux)
override TARGET_UNITS+=fpmkunit
endif
@ -564,6 +588,9 @@ endif
ifeq ($(FULL_TARGET),powerpc-embedded)
override COMPILER_INCLUDEDIR+=src
endif
ifeq ($(FULL_TARGET),powerpc-wii)
override COMPILER_INCLUDEDIR+=src
endif
ifeq ($(FULL_TARGET),sparc-linux)
override COMPILER_INCLUDEDIR+=src
endif
@ -750,6 +777,9 @@ endif
ifeq ($(FULL_TARGET),powerpc-embedded)
override COMPILER_SOURCEDIR+=src
endif
ifeq ($(FULL_TARGET),powerpc-wii)
override COMPILER_SOURCEDIR+=src
endif
ifeq ($(FULL_TARGET),sparc-linux)
override COMPILER_SOURCEDIR+=src
endif
@ -1171,6 +1201,11 @@ ifeq ($(OS_TARGET),NativeNT)
SHAREDLIBEXT=.dll
SHORTSUFFIX=nativent
endif
ifeq ($(OS_TARGET),wii)
EXEEXT=.dol
SHAREDLIBEXT=.so
SHORTSUFFIX=wii
endif
else
ifeq ($(OS_TARGET),go32v1)
PPUEXT=.pp1
@ -1818,6 +1853,12 @@ REQUIRE_PACKAGES_HASH=1
REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-PROCESS=1
endif
ifeq ($(FULL_TARGET),powerpc-wii)
REQUIRE_PACKAGES_RTL=1
REQUIRE_PACKAGES_HASH=1
REQUIRE_PACKAGES_PASZLIB=1
REQUIRE_PACKAGES_FCL-PROCESS=1
endif
ifeq ($(FULL_TARGET),sparc-linux)
REQUIRE_PACKAGES_RTL=1
REQUIRE_PACKAGES_HASH=1
@ -1976,6 +2017,15 @@ UNITDIR_RTL=$(PACKAGEDIR_RTL)/units/$(TARGETSUFFIX)
else
UNITDIR_RTL=$(PACKAGEDIR_RTL)
endif
ifneq ($(wildcard $(PACKAGEDIR_RTL)/units/$(SOURCESUFFIX)),)
UNITDIR_FPMAKE_RTL=$(PACKAGEDIR_RTL)/units/$(SOURCESUFFIX)
else
ifneq ($(wildcard $(PACKAGEDIR_RTL)/units_bs/$(SOURCESUFFIX)),)
UNITDIR_FPMAKE_RTL=$(PACKAGEDIR_RTL)/units_bs/$(SOURCESUFFIX)
else
UNITDIR_FPMAKE_RTL=$(PACKAGEDIR_RTL)
endif
endif
ifdef CHECKDEPEND
$(PACKAGEDIR_RTL)/$(OS_TARGET)/$(FPCMADE):
$(MAKE) -C $(PACKAGEDIR_RTL)/$(OS_TARGET) $(FPCMADE)
@ -1993,6 +2043,9 @@ endif
ifdef UNITDIR_RTL
override COMPILER_UNITDIR+=$(UNITDIR_RTL)
endif
ifdef UNITDIR_FPMAKE_RTL
override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_RTL)
endif
endif
ifdef REQUIRE_PACKAGES_HASH
PACKAGEDIR_HASH:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /hash/Makefile.fpc,$(PACKAGESDIR))))))
@ -2002,6 +2055,15 @@ UNITDIR_HASH=$(PACKAGEDIR_HASH)/units/$(TARGETSUFFIX)
else
UNITDIR_HASH=$(PACKAGEDIR_HASH)
endif
ifneq ($(wildcard $(PACKAGEDIR_HASH)/units/$(SOURCESUFFIX)),)
UNITDIR_FPMAKE_HASH=$(PACKAGEDIR_HASH)/units/$(SOURCESUFFIX)
else
ifneq ($(wildcard $(PACKAGEDIR_HASH)/units_bs/$(SOURCESUFFIX)),)
UNITDIR_FPMAKE_HASH=$(PACKAGEDIR_HASH)/units_bs/$(SOURCESUFFIX)
else
UNITDIR_FPMAKE_HASH=$(PACKAGEDIR_HASH)
endif
endif
ifdef CHECKDEPEND
$(PACKAGEDIR_HASH)/$(FPCMADE):
$(MAKE) -C $(PACKAGEDIR_HASH) $(FPCMADE)
@ -2019,6 +2081,9 @@ endif
ifdef UNITDIR_HASH
override COMPILER_UNITDIR+=$(UNITDIR_HASH)
endif
ifdef UNITDIR_FPMAKE_HASH
override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_HASH)
endif
endif
ifdef REQUIRE_PACKAGES_PASZLIB
PACKAGEDIR_PASZLIB:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Makefile.fpc,$(PACKAGESDIR))))))
@ -2028,6 +2093,15 @@ UNITDIR_PASZLIB=$(PACKAGEDIR_PASZLIB)/units/$(TARGETSUFFIX)
else
UNITDIR_PASZLIB=$(PACKAGEDIR_PASZLIB)
endif
ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/units/$(SOURCESUFFIX)),)
UNITDIR_FPMAKE_PASZLIB=$(PACKAGEDIR_PASZLIB)/units/$(SOURCESUFFIX)
else
ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/units_bs/$(SOURCESUFFIX)),)
UNITDIR_FPMAKE_PASZLIB=$(PACKAGEDIR_PASZLIB)/units_bs/$(SOURCESUFFIX)
else
UNITDIR_FPMAKE_PASZLIB=$(PACKAGEDIR_PASZLIB)
endif
endif
ifdef CHECKDEPEND
$(PACKAGEDIR_PASZLIB)/$(FPCMADE):
$(MAKE) -C $(PACKAGEDIR_PASZLIB) $(FPCMADE)
@ -2045,6 +2119,9 @@ endif
ifdef UNITDIR_PASZLIB
override COMPILER_UNITDIR+=$(UNITDIR_PASZLIB)
endif
ifdef UNITDIR_FPMAKE_PASZLIB
override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_PASZLIB)
endif
endif
ifdef REQUIRE_PACKAGES_FCL-PROCESS
PACKAGEDIR_FCL-PROCESS:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fcl-process/Makefile.fpc,$(PACKAGESDIR))))))
@ -2054,6 +2131,15 @@ UNITDIR_FCL-PROCESS=$(PACKAGEDIR_FCL-PROCESS)/units/$(TARGETSUFFIX)
else
UNITDIR_FCL-PROCESS=$(PACKAGEDIR_FCL-PROCESS)
endif
ifneq ($(wildcard $(PACKAGEDIR_FCL-PROCESS)/units/$(SOURCESUFFIX)),)
UNITDIR_FPMAKE_FCL-PROCESS=$(PACKAGEDIR_FCL-PROCESS)/units/$(SOURCESUFFIX)
else
ifneq ($(wildcard $(PACKAGEDIR_FCL-PROCESS)/units_bs/$(SOURCESUFFIX)),)
UNITDIR_FPMAKE_FCL-PROCESS=$(PACKAGEDIR_FCL-PROCESS)/units_bs/$(SOURCESUFFIX)
else
UNITDIR_FPMAKE_FCL-PROCESS=$(PACKAGEDIR_FCL-PROCESS)
endif
endif
ifdef CHECKDEPEND
$(PACKAGEDIR_FCL-PROCESS)/$(FPCMADE):
$(MAKE) -C $(PACKAGEDIR_FCL-PROCESS) $(FPCMADE)
@ -2071,6 +2157,9 @@ endif
ifdef UNITDIR_FCL-PROCESS
override COMPILER_UNITDIR+=$(UNITDIR_FCL-PROCESS)
endif
ifdef UNITDIR_FPMAKE_FCL-PROCESS
override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_FCL-PROCESS)
endif
endif
ifndef NOCPUDEF
override FPCOPTDEF=$(ARCH)
@ -2560,6 +2649,7 @@ fpc_baseinfo:
@$(ECHO) Full Target.. $(FULL_TARGET)
@$(ECHO) SourceSuffix. $(SOURCESUFFIX)
@$(ECHO) TargetSuffix. $(TARGETSUFFIX)
@$(ECHO) FPC fpmake... $(FPCFPMAKE)
@$(ECHO)
@$(ECHO) == Directory info ==
@$(ECHO)
@ -2664,11 +2754,16 @@ zipexampleinstall: fpc_zipexampleinstall
zipdistinstall: fpc_zipdistinstall
clean: fpc_clean
distclean: fpc_distclean
cleanall: fpc_cleanall
info: fpc_info
makefiles: fpc_makefiles
.PHONY: all debug smart release units examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefiles
.PHONY: all debug smart release units examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean info makefiles
ifneq ($(wildcard fpcmake.loc),)
include fpcmake.loc
endif
.NOTPARALLEL:
$(TARGET_UNITDIRBS):
$(MKDIRTREE) $(TARGET_UNITDIRBS)
bootstrap: $(TARGET_UNITDIRBS)
$(FPCFPMAKE) src/fpmkunit.pp -n $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) -dNO_UNIT_PROCESS -dNO_UNIT_ZIPPER -FU$(TARGET_UNITDIRBS)
cleanall: fpc_cleanall
-$(DELTREE) units_bs

View File

@ -22,5 +22,17 @@ includedir=src
[default]
fpcdir=../..
[prerules]
TARGET_UNITDIRBS=units_bs/$(SOURCESUFFIX)
CLEAN_FILES+=units_bs/$(SOURCESUFFIX)/fpmkunit.ppu units_bs/$(SOURCESUFFIX)/fpmkunit.rst units_bs/$(SOURCESUFFIX)/fpmkunit.o
[rules]
.NOTPARALLEL:
$(TARGET_UNITDIRBS):
$(MKDIRTREE) $(TARGET_UNITDIRBS)
bootstrap: $(TARGET_UNITDIRBS)
$(FPCFPMAKE) src/fpmkunit.pp -n $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) -dNO_UNIT_PROCESS -dNO_UNIT_ZIPPER -FU$(TARGET_UNITDIRBS)
cleanall: fpc_cleanall
-$(DELTREE) units_bs