diff options
62 files changed, 11122 insertions, 20438 deletions
diff --git a/packages/Makefile b/packages/Makefile index c9f7aeb6fb..af2ff87e0e 100644 --- a/packages/Makefile +++ b/packages/Makefile @@ -1,5 +1,5 @@ # -# Don't edit, this file is generated by FPCMake Version 2.0.0 [2012/01/05] +# Don't edit, this file is generated by FPCMake Version 2.0.0 [2012/01/09] # 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 @@ -9754,11 +9754,11 @@ winunits-jedi_shared: winunits-base_shared fcl-registry_shared fcl-base_shared winunits-jedi_smart: winunits-base_smart fcl-registry_smart fcl-base_smart winunits-jedi_debug: winunits-base_debug fcl-registry_debug fcl-base_debug winunits-jedi_release: winunits-base_release fcl-registry_release fcl-base_release -xforms_all: x11_all -xforms_shared: x11_shared -xforms_smart: x11_smart -xforms_debug: x11_debug -xforms_release: x11_release +xforms_all: x11_all fpmkunit_all +xforms_shared: x11_shared fpmkunit_shared +xforms_smart: x11_smart fpmkunit_smart +xforms_debug: x11_debug fpmkunit_debug +xforms_release: x11_release fpmkunit_release gnome1_all: gtk1_all imlib_all gnome1_shared: gtk1_shared imlib_shared gnome1_smart: gtk1_smart imlib_smart @@ -9781,11 +9781,11 @@ fcl-xml_smart: iconvenc_smart fcl-xml_debug: iconvenc_debug fcl-xml_release: iconvenc_release endif -opencl_all: opengl_all -opencl_debug: opengl_debug -opencl_smart: opengl_smart -opencl_release: opengl_release -opencl_shared: opengl_shared +opencl_all: opengl_all fpmkunit_all +opencl_debug: opengl_debug fpmkunit_debug +opencl_smart: opengl_smart fpmkunit_smart +opencl_release: opengl_release fpmkunit_release +opencl_shared: opengl_shared fpmkunit_shared libc_all: fpmkunit_all libc_shared: fpmkunit_shared libc_smart: fpmkunit_smart @@ -9886,3 +9886,93 @@ syslog_shared: fpmkunit_shared syslog_smart: fpmkunit_smart syslog_debug: fpmkunit_debug syslog_release: fpmkunit_release +ibase_all: fpmkunit_all +ibase_shared: fpmkunit_shared +ibase_smart: fpmkunit_smart +ibase_debug: fpmkunit_debug +ibase_release: fpmkunit_release +mysql_all: fpmkunit_all +mysql_shared: fpmkunit_shared +mysql_smart: fpmkunit_smart +mysql_debug: fpmkunit_debug +mysql_release: fpmkunit_release +numlib_all: fpmkunit_all +numlib_shared: fpmkunit_shared +numlib_smart: fpmkunit_smart +numlib_debug: fpmkunit_debug +numlib_release: fpmkunit_release +oracle_all: fpmkunit_all +oracle_shared: fpmkunit_shared +oracle_smart: fpmkunit_smart +oracle_debug: fpmkunit_debug +oracle_release: fpmkunit_release +postgres_all: fpmkunit_all +postgres_shared: fpmkunit_shared +postgres_smart: fpmkunit_smart +postgres_debug: fpmkunit_debug +postgres_release: fpmkunit_release +pthreads_all: fpmkunit_all +pthreads_shared: fpmkunit_shared +pthreads_smart: fpmkunit_smart +pthreads_debug: fpmkunit_debug +pthreads_release: fpmkunit_release +zorba_all: fpmkunit_all +zorba_shared: fpmkunit_shared +zorba_smart: fpmkunit_smart +zorba_debug: fpmkunit_debug +zorba_release: fpmkunit_release +gdbm_all: fpmkunit_all +gdbm_shared: fpmkunit_shared +gdbm_smart: fpmkunit_smart +gdbm_debug: fpmkunit_debug +gdbm_release: fpmkunit_release +proj4_all: fpmkunit_all +proj4_shared: fpmkunit_shared +proj4_smart: fpmkunit_smart +proj4_debug: fpmkunit_debug +proj4_release: fpmkunit_release +regexpr_all: fpmkunit_all +regexpr_shared: fpmkunit_shared +regexpr_smart: fpmkunit_smart +regexpr_debug: fpmkunit_debug +regexpr_release: fpmkunit_release +users_all: fpmkunit_all +users_shared: fpmkunit_shared +users_smart: fpmkunit_smart +users_debug: fpmkunit_debug +users_release: fpmkunit_release +utmp_all: fpmkunit_all +utmp_shared: fpmkunit_shared +utmp_smart: fpmkunit_smart +utmp_debug: fpmkunit_debug +utmp_release: fpmkunit_release +uuid_all: fpmkunit_all +uuid_shared: fpmkunit_shared +uuid_smart: fpmkunit_smart +uuid_debug: fpmkunit_debug +uuid_release: fpmkunit_release +x11_all: fpmkunit_all +x11_shared: fpmkunit_shared +x11_smart: fpmkunit_smart +x11_debug: fpmkunit_debug +x11_release: fpmkunit_release +odbc_all: fpmkunit_all +odbc_shared: fpmkunit_shared +odbc_smart: fpmkunit_smart +odbc_debug: fpmkunit_debug +odbc_release: fpmkunit_release +oggvorbis_all: fpmkunit_all +oggvorbis_shared: fpmkunit_shared +oggvorbis_smart: fpmkunit_smart +oggvorbis_debug: fpmkunit_debug +oggvorbis_release: fpmkunit_release +openal_all: fpmkunit_all +openal_shared: fpmkunit_shared +openal_smart: fpmkunit_smart +openal_debug: fpmkunit_debug +openal_release: fpmkunit_release +nvapi_all: fpmkunit_all +nvapi_shared: fpmkunit_shared +nvapi_smart: fpmkunit_smart +nvapi_debug: fpmkunit_debug +nvapi_release: fpmkunit_release diff --git a/packages/Makefile.fpc b/packages/Makefile.fpc index e0e036e19d..c25533f1ce 100644 --- a/packages/Makefile.fpc +++ b/packages/Makefile.fpc @@ -401,11 +401,11 @@ winunits-jedi_debug: winunits-base_debug fcl-registry_debug fcl-base_debug winunits-jedi_release: winunits-base_release fcl-registry_release fcl-base_release -xforms_all: x11_all -xforms_shared: x11_shared -xforms_smart: x11_smart -xforms_debug: x11_debug -xforms_release: x11_release +xforms_all: x11_all fpmkunit_all +xforms_shared: x11_shared fpmkunit_shared +xforms_smart: x11_smart fpmkunit_smart +xforms_debug: x11_debug fpmkunit_debug +xforms_release: x11_release fpmkunit_release gnome1_all: gtk1_all imlib_all gnome1_shared: gtk1_shared imlib_shared @@ -433,11 +433,11 @@ fcl-xml_debug: iconvenc_debug fcl-xml_release: iconvenc_release endif -opencl_all: opengl_all -opencl_debug: opengl_debug -opencl_smart: opengl_smart -opencl_release: opengl_release -opencl_shared: opengl_shared +opencl_all: opengl_all fpmkunit_all +opencl_debug: opengl_debug fpmkunit_debug +opencl_smart: opengl_smart fpmkunit_smart +opencl_release: opengl_release fpmkunit_release +opencl_shared: opengl_shared fpmkunit_shared libc_all: fpmkunit_all libc_shared: fpmkunit_shared @@ -559,4 +559,111 @@ syslog_smart: fpmkunit_smart syslog_debug: fpmkunit_debug syslog_release: fpmkunit_release +ibase_all: fpmkunit_all +ibase_shared: fpmkunit_shared +ibase_smart: fpmkunit_smart +ibase_debug: fpmkunit_debug +ibase_release: fpmkunit_release + +mysql_all: fpmkunit_all +mysql_shared: fpmkunit_shared +mysql_smart: fpmkunit_smart +mysql_debug: fpmkunit_debug +mysql_release: fpmkunit_release + +numlib_all: fpmkunit_all +numlib_shared: fpmkunit_shared +numlib_smart: fpmkunit_smart +numlib_debug: fpmkunit_debug +numlib_release: fpmkunit_release + +oracle_all: fpmkunit_all +oracle_shared: fpmkunit_shared +oracle_smart: fpmkunit_smart +oracle_debug: fpmkunit_debug +oracle_release: fpmkunit_release + +postgres_all: fpmkunit_all +postgres_shared: fpmkunit_shared +postgres_smart: fpmkunit_smart +postgres_debug: fpmkunit_debug +postgres_release: fpmkunit_release + +pthreads_all: fpmkunit_all +pthreads_shared: fpmkunit_shared +pthreads_smart: fpmkunit_smart +pthreads_debug: fpmkunit_debug +pthreads_release: fpmkunit_release + +zorba_all: fpmkunit_all +zorba_shared: fpmkunit_shared +zorba_smart: fpmkunit_smart +zorba_debug: fpmkunit_debug +zorba_release: fpmkunit_release + +gdbm_all: fpmkunit_all +gdbm_shared: fpmkunit_shared +gdbm_smart: fpmkunit_smart +gdbm_debug: fpmkunit_debug +gdbm_release: fpmkunit_release + +proj4_all: fpmkunit_all +proj4_shared: fpmkunit_shared +proj4_smart: fpmkunit_smart +proj4_debug: fpmkunit_debug +proj4_release: fpmkunit_release + +regexpr_all: fpmkunit_all +regexpr_shared: fpmkunit_shared +regexpr_smart: fpmkunit_smart +regexpr_debug: fpmkunit_debug +regexpr_release: fpmkunit_release + +users_all: fpmkunit_all +users_shared: fpmkunit_shared +users_smart: fpmkunit_smart +users_debug: fpmkunit_debug +users_release: fpmkunit_release + +utmp_all: fpmkunit_all +utmp_shared: fpmkunit_shared +utmp_smart: fpmkunit_smart +utmp_debug: fpmkunit_debug +utmp_release: fpmkunit_release + +uuid_all: fpmkunit_all +uuid_shared: fpmkunit_shared +uuid_smart: fpmkunit_smart +uuid_debug: fpmkunit_debug +uuid_release: fpmkunit_release + +x11_all: fpmkunit_all +x11_shared: fpmkunit_shared +x11_smart: fpmkunit_smart +x11_debug: fpmkunit_debug +x11_release: fpmkunit_release + +odbc_all: fpmkunit_all +odbc_shared: fpmkunit_shared +odbc_smart: fpmkunit_smart +odbc_debug: fpmkunit_debug +odbc_release: fpmkunit_release + +oggvorbis_all: fpmkunit_all +oggvorbis_shared: fpmkunit_shared +oggvorbis_smart: fpmkunit_smart +oggvorbis_debug: fpmkunit_debug +oggvorbis_release: fpmkunit_release + +openal_all: fpmkunit_all +openal_shared: fpmkunit_shared +openal_smart: fpmkunit_smart +openal_debug: fpmkunit_debug +openal_release: fpmkunit_release + +nvapi_all: fpmkunit_all +nvapi_shared: fpmkunit_shared +nvapi_smart: fpmkunit_smart +nvapi_debug: fpmkunit_debug +nvapi_release: fpmkunit_release diff --git a/packages/gdbm/Makefile b/packages/gdbm/Makefile index 621b8a4672..9f2d7c9730 100644 --- a/packages/gdbm/Makefile +++ b/packages/gdbm/Makefile @@ -1,5 +1,5 @@ # -# Don't edit, this file is generated by FPCMake Version 2.0.0 [2011/12/04] +# Don't edit, this file is generated by FPCMake Version 2.0.0 [2012/01/09] # 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 @@ -294,765 +294,15 @@ endif endif override PACKAGE_NAME=gdbm override PACKAGE_VERSION=2.7.1 -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_UNITS+=gdbm -endif -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_EXAMPLEDIRS+=examples +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_EXAMPLEDIRS+=examples +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) override INSTALL_FPCPACKAGE=y -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_INCLUDEDIR+=src -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 -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),sparc-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_SOURCEDIR+=src tests -endif -override SHARED_BUILD=n -override SHARED_BUILD=n ifdef REQUIRE_UNITSDIR override UNITSDIR+=$(REQUIRE_UNITSDIR) endif @@ -1637,25 +887,6 @@ DATESTR:=$(shell $(DATE) +%Y%m%d) else DATESTR= endif -ifndef UPXPROG -ifeq ($(OS_TARGET),go32v2) -UPXPROG:=1 -endif -ifeq ($(OS_TARGET),win32) -UPXPROG:= -endif -ifdef UPXPROG -UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH)))) -ifeq ($(UPXPROG),) -UPXPROG= -else -UPXPROG:=$(firstword $(UPXPROG)) -endif -else -UPXPROG= -endif -endif -export UPXPROG ZIPOPT=-9 ZIPEXT=.zip ifeq ($(USETAR),bz2) @@ -1665,195 +896,447 @@ else TAROPT=vz TAREXT=.tar.gz endif -override REQUIRE_PACKAGES=rtl +override REQUIRE_PACKAGES=rtl fpmkunit ifeq ($(FULL_TARGET),i386-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-go32v2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-win32) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-os2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-beos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-haiku) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-qnx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netware) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wdosx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-emx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-watcom) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netwlibc) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-nativent) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-iphonesim) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-atari) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-macos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-morphos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-wii) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-win64) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-gba) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-nds) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),avr-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),mipsel-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifdef REQUIRE_PACKAGES_RTL PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))) @@ -1893,6 +1376,158 @@ 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)))))) +ifneq ($(PACKAGEDIR_HASH),) +ifneq ($(wildcard $(PACKAGEDIR_HASH)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_HASH)/$(FPCMADE) +endif +else +PACKAGEDIR_HASH= +UNITDIR_HASH:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /hash/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_HASH),) +UNITDIR_HASH:=$(firstword $(UNITDIR_HASH)) +else +UNITDIR_HASH= +endif +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)))))) +ifneq ($(PACKAGEDIR_PASZLIB),) +ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE) +endif +else +PACKAGEDIR_PASZLIB= +UNITDIR_PASZLIB:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_PASZLIB),) +UNITDIR_PASZLIB:=$(firstword $(UNITDIR_PASZLIB)) +else +UNITDIR_PASZLIB= +endif +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)))))) +ifneq ($(PACKAGEDIR_FCL-PROCESS),) +ifneq ($(wildcard $(PACKAGEDIR_FCL-PROCESS)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FCL-PROCESS)/$(FPCMADE) +endif +else +PACKAGEDIR_FCL-PROCESS= +UNITDIR_FCL-PROCESS:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fcl-process/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FCL-PROCESS),) +UNITDIR_FCL-PROCESS:=$(firstword $(UNITDIR_FCL-PROCESS)) +else +UNITDIR_FCL-PROCESS= +endif +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 +ifdef REQUIRE_PACKAGES_FPMKUNIT +PACKAGEDIR_FPMKUNIT:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Makefile.fpc,$(PACKAGESDIR)))))) +ifneq ($(PACKAGEDIR_FPMKUNIT),) +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX)),) +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX) +else +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX) +else +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX) +else +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +endif +ifdef CHECKDEPEND +$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE): + $(MAKE) -C $(PACKAGEDIR_FPMKUNIT) $(FPCMADE) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE) +endif +else +PACKAGEDIR_FPMKUNIT= +UNITDIR_FPMKUNIT:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FPMKUNIT),) +UNITDIR_FPMKUNIT:=$(firstword $(UNITDIR_FPMKUNIT)) +else +UNITDIR_FPMKUNIT= +endif +endif +ifdef UNITDIR_FPMKUNIT +override COMPILER_UNITDIR+=$(UNITDIR_FPMKUNIT) +endif +ifdef UNITDIR_FPMAKE_FPMKUNIT +override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_FPMKUNIT) +endif +endif ifndef NOCPUDEF override FPCOPTDEF=$(ARCH) endif @@ -1909,12 +1544,16 @@ endif ifndef CROSSBOOTSTRAP ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-XP$(BINUTILSPREFIX) -override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) endif ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-Xr$(RLINKPATH) endif endif +ifndef CROSSCOMPILE +ifneq ($(BINUTILSPREFIX),) +override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) +endif +endif ifdef UNITDIR override FPCOPT+=$(addprefix -Fu,$(UNITDIR)) endif @@ -2048,113 +1687,10 @@ EXECPPAS:=@$(PPAS) endif endif endif -.PHONY: fpc_units -ifneq ($(TARGET_UNITS)$(TARGET_IMPLICITUNITS),) -override ALLTARGET+=fpc_units -override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS)) -override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS)) -override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -endif -fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES) ifdef TARGET_RSTS override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS)) override CLEANRSTFILES+=$(RSTFILES) endif -.PHONY: fpc_examples -ifneq ($(TARGET_EXAMPLES),) -HASEXAMPLES=1 -override EXAMPLESOURCEFILES:=$(wildcard $(addsuffix .pp,$(TARGET_EXAMPLES)) $(addsuffix .pas,$(TARGET_EXAMPLES)) $(addsuffix .lpr,$(TARGET_EXAMPLES)) $(addsuffix .dpr,$(TARGET_EXAMPLES))) -override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(TARGET_EXAMPLES)) -override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(TARGET_EXAMPLES)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES))) -override EXAMPLEDBGFILES:=$(addsuffix $(EXEDBGEXT),$(TARGET_EXAMPLES)) -override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES) -override CLEANEXEDBGFILES+=$(EXAMPLEDBGFILES) -ifeq ($(OS_TARGET),os2) -override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES)) -endif -ifeq ($(OS_TARGET),emx) -override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES)) -endif -endif -ifneq ($(TARGET_EXAMPLEDIRS),) -HASEXAMPLES=1 -endif -fpc_examples: all $(EXAMPLEFILES) $(addsuffix _all,$(TARGET_EXAMPLEDIRS)) -.PHONY: fpc_all fpc_smart fpc_debug fpc_release fpc_shared -$(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET) - @$(ECHOREDIR) Compiled > $(FPCMADE) -fpc_all: $(FPCMADE) -fpc_smart: - $(MAKE) all LINKSMART=1 CREATESMART=1 -fpc_debug: - $(MAKE) all DEBUG=1 -fpc_release: - $(MAKE) all RELEASE=1 -.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res -$(COMPILER_UNITTARGETDIR): - $(MKDIRTREE) $(COMPILER_UNITTARGETDIR) -$(COMPILER_TARGETDIR): - $(MKDIRTREE) $(COMPILER_TARGETDIR) -%$(PPUEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(PPUEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.lpr - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.dpr - $(COMPILER) $< - $(EXECPPAS) -%.res: %.rc - windres -i $< -o $@ -vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.inc $(COMPILER_INCLUDEDIR) -vpath %$(OEXT) $(COMPILER_UNITTARGETDIR) -vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR) -.PHONY: fpc_shared -override INSTALLTARGET+=fpc_shared_install -ifndef SHARED_LIBVERSION -SHARED_LIBVERSION=$(FPC_VERSION) -endif -ifndef SHARED_LIBNAME -SHARED_LIBNAME=$(PACKAGE_NAME) -endif -ifndef SHARED_FULLNAME -SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSION)$(SHAREDLIBEXT) -endif -ifndef SHARED_LIBUNITS -SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS) -override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_LIBUNITS)) -endif -fpc_shared: -ifdef HASSHAREDLIB - $(MAKE) all CREATESHARED=1 LINKSHARED=1 CREATESMART=1 -ifneq ($(SHARED_BUILD),n) - $(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR) -endif -else - @$(ECHO) Shared Libraries not supported -endif -fpc_shared_install: -ifneq ($(SHARED_BUILD),n) -ifneq ($(SHARED_LIBUNITS),) -ifneq ($(wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),) - $(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INSTALL_SHAREDDIR) -endif -endif -endif .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall ifdef INSTALL_UNITS override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS)) @@ -2178,9 +1714,6 @@ endif fpc_install: all $(INSTALLTARGET) ifdef INSTALLEXEFILES $(MKDIR) $(INSTALL_BINDIR) -ifdef UPXPROG - -$(UPXPROG) $(INSTALLEXEFILES) -endif $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR) endif ifdef INSTALL_CREATEPACKAGEFPC @@ -2439,7 +1972,6 @@ fpc_baseinfo: @$(ECHO) Date...... $(DATE) @$(ECHO) FPCMake... $(FPCMAKE) @$(ECHO) PPUMove... $(PPUMOVE) - @$(ECHO) Upx....... $(UPXPROG) @$(ECHO) Zip....... $(ZIPPROG) @$(ECHO) @$(ECHO) == Object info == @@ -2496,262 +2028,59 @@ endif fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS)) fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2 fpc_makefiles: fpc_makefile fpc_makefile_dirs -ifeq ($(FULL_TARGET),i386-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-go32v2) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-win32) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-os2) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-beos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-haiku) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-qnx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netware) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-openbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-wdosx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-emx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-watcom) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-wince) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-symbian) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-nativent) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-amiga) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-atari) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-palmos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-macos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-wii) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-win64) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-palmos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-wince) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-gba) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-nds) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-symbian) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),avr-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),armeb-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),armeb-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),mipsel-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifdef TARGET_EXAMPLEDIRS_EXAMPLES -examples_all: - $(MAKE) -C examples all -examples_debug: - $(MAKE) -C examples debug -examples_smart: - $(MAKE) -C examples smart -examples_release: - $(MAKE) -C examples release -examples_units: - $(MAKE) -C examples units -examples_examples: - $(MAKE) -C examples examples -examples_shared: - $(MAKE) -C examples shared -examples_install: - $(MAKE) -C examples install -examples_sourceinstall: - $(MAKE) -C examples sourceinstall -examples_exampleinstall: - $(MAKE) -C examples exampleinstall -examples_distinstall: - $(MAKE) -C examples distinstall -examples_zipinstall: - $(MAKE) -C examples zipinstall -examples_zipsourceinstall: - $(MAKE) -C examples zipsourceinstall -examples_zipexampleinstall: - $(MAKE) -C examples zipexampleinstall -examples_zipdistinstall: - $(MAKE) -C examples zipdistinstall -examples_clean: - $(MAKE) -C examples clean -examples_distclean: - $(MAKE) -C examples distclean -examples_cleanall: - $(MAKE) -C examples cleanall -examples_info: - $(MAKE) -C examples info -examples_makefiles: - $(MAKE) -C examples makefiles +units: examples: - $(MAKE) -C examples all -.PHONY: examples_all examples_debug examples_smart examples_release examples_units examples_examples examples_shared examples_install examples_sourceinstall examples_exampleinstall examples_distinstall examples_zipinstall examples_zipsourceinstall examples_zipexampleinstall examples_zipdistinstall examples_clean examples_distclean examples_cleanall examples_info examples_makefiles examples -endif -all: fpc_all -debug: fpc_debug -smart: fpc_smart -release: fpc_release -units: fpc_units -examples: fpc_examples -shared: fpc_shared -install: fpc_install +shared: sourceinstall: fpc_sourceinstall exampleinstall: fpc_exampleinstall -distinstall: fpc_distinstall zipinstall: fpc_zipinstall zipsourceinstall: fpc_zipsourceinstall zipexampleinstall: fpc_zipexampleinstall zipdistinstall: fpc_zipdistinstall -clean: fpc_clean $(addsuffix _clean,$(TARGET_EXAMPLEDIRS)) -distclean: fpc_distclean -cleanall: fpc_cleanall +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: units examples shared sourceinstall exampleinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info makefiles ifneq ($(wildcard fpcmake.loc),) include fpcmake.loc endif .NOTPARALLEL: +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif diff --git a/packages/gdbm/Makefile.fpc b/packages/gdbm/Makefile.fpc index 094390ca4a..9c9fd70d22 100644 --- a/packages/gdbm/Makefile.fpc +++ b/packages/gdbm/Makefile.fpc @@ -1,33 +1,76 @@ # -# Makefile.fpc for gdbm bindings +# Makefile.fpc for running fpmake # [package] name=gdbm version=2.7.1 -[target] -units=gdbm -exampledirs=examples - [require] -package=rtl +packages=rtl fpmkunit [install] -examplesubdir=gdbm fpcpackage=y [default] fpcdir=../.. -[compiler] -includedir=src -sourcedir=src tests - - -[shared] -build=n +[prerules] +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) +endif +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) +endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) [rules] .NOTPARALLEL: +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +# If no fpmake exists and (dist)clean is called, do not try to build fpmake, it will +# most often fail because the dependencies are cleared. +# In case of a clean, simply do nothing +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +# In case of a distclean, perform an 'old'-style distclean. This to avoid problems +# when the package is compiled using fpcmake prior to running this clean using fpmake +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +# distinstall also installs the example-sources +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif + diff --git a/packages/gdbm/Makefile.fpc.fpcmake b/packages/gdbm/Makefile.fpc.fpcmake new file mode 100644 index 0000000000..094390ca4a --- /dev/null +++ b/packages/gdbm/Makefile.fpc.fpcmake @@ -0,0 +1,33 @@ +# +# Makefile.fpc for gdbm bindings +# + +[package] +name=gdbm +version=2.7.1 + +[target] +units=gdbm +exampledirs=examples + +[require] +package=rtl + +[install] +examplesubdir=gdbm +fpcpackage=y + +[default] +fpcdir=../.. + +[compiler] +includedir=src +sourcedir=src tests + + +[shared] +build=n + +[rules] +.NOTPARALLEL: + diff --git a/packages/ibase/Makefile b/packages/ibase/Makefile index 1eeccc5601..1804c9ca70 100644 --- a/packages/ibase/Makefile +++ b/packages/ibase/Makefile @@ -1,5 +1,5 @@ # -# Don't edit, this file is generated by FPCMake Version 2.0.0 [2011/12/04] +# Don't edit, this file is generated by FPCMake Version 2.0.0 [2012/01/09] # 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 @@ -294,765 +294,15 @@ endif endif override PACKAGE_NAME=ibase override PACKAGE_VERSION=2.7.1 -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_UNITS+=ibase40 ibase60 ibase60dyn -endif -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_EXAMPLEDIRS+=examples +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_EXAMPLEDIRS+=examples +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) override INSTALL_FPCPACKAGE=y -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_INCLUDEDIR+=src -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 -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_SOURCEDIR+=src -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 -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_SOURCEDIR+=src -endif -override SHARED_BUILD=n -override SHARED_BUILD=n ifdef REQUIRE_UNITSDIR override UNITSDIR+=$(REQUIRE_UNITSDIR) endif @@ -1249,37 +499,6 @@ endif else CROSSBINDIR= endif -ifeq ($(OS_SOURCE),linux) -ifndef GCCLIBDIR -ifeq ($(CPU_TARGET),i386) -ifneq ($(findstring x86_64,$(shell uname -a)),) -ifeq ($(BINUTILSPREFIX),) -GCCLIBDIR:=$(shell dirname `gcc -m32 -print-libgcc-file-name`) -endif -endif -endif -ifeq ($(CPU_TARGET),powerpc64) -ifeq ($(BINUTILSPREFIX),) -GCCLIBDIR:=$(shell dirname `gcc -m64 -print-libgcc-file-name`) -endif -endif -endif -ifndef GCCLIBDIR -CROSSGCC=$(strip $(wildcard $(addsuffix /$(BINUTILSPREFIX)gcc$(SRCEXEEXT),$(SEARCHPATH)))) -ifneq ($(CROSSGCC),) -GCCLIBDIR:=$(shell dirname `$(CROSSGCC) -print-libgcc-file-name`) -endif -endif -ifndef OTHERLIBDIR -OTHERLIBDIR:=$(shell grep -v "^\#" /etc/ld.so.conf | awk '{ ORS=" "; print $1 }') -endif -endif -ifdef inUnix -ifeq ($(OS_SOURCE),netbsd) -OTHERLIBDIR+=/usr/pkg/lib -endif -export GCCLIBDIR OTHERLIB -endif BATCHEXT=.bat LOADEREXT=.as EXEEXT=.exe @@ -1668,25 +887,6 @@ DATESTR:=$(shell $(DATE) +%Y%m%d) else DATESTR= endif -ifndef UPXPROG -ifeq ($(OS_TARGET),go32v2) -UPXPROG:=1 -endif -ifeq ($(OS_TARGET),win32) -UPXPROG:= -endif -ifdef UPXPROG -UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH)))) -ifeq ($(UPXPROG),) -UPXPROG= -else -UPXPROG:=$(firstword $(UPXPROG)) -endif -else -UPXPROG= -endif -endif -export UPXPROG ZIPOPT=-9 ZIPEXT=.zip ifeq ($(USETAR),bz2) @@ -1696,195 +896,447 @@ else TAROPT=vz TAREXT=.tar.gz endif -override REQUIRE_PACKAGES=rtl +override REQUIRE_PACKAGES=rtl fpmkunit ifeq ($(FULL_TARGET),i386-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-go32v2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-win32) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-os2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-beos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-haiku) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-qnx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netware) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wdosx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-emx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-watcom) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netwlibc) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-nativent) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-iphonesim) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-atari) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-macos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-morphos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-wii) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-win64) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-gba) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-nds) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),avr-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),mipsel-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifdef REQUIRE_PACKAGES_RTL PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))) @@ -1924,6 +1376,158 @@ 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)))))) +ifneq ($(PACKAGEDIR_HASH),) +ifneq ($(wildcard $(PACKAGEDIR_HASH)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_HASH)/$(FPCMADE) +endif +else +PACKAGEDIR_HASH= +UNITDIR_HASH:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /hash/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_HASH),) +UNITDIR_HASH:=$(firstword $(UNITDIR_HASH)) +else +UNITDIR_HASH= +endif +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)))))) +ifneq ($(PACKAGEDIR_PASZLIB),) +ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE) +endif +else +PACKAGEDIR_PASZLIB= +UNITDIR_PASZLIB:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_PASZLIB),) +UNITDIR_PASZLIB:=$(firstword $(UNITDIR_PASZLIB)) +else +UNITDIR_PASZLIB= +endif +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)))))) +ifneq ($(PACKAGEDIR_FCL-PROCESS),) +ifneq ($(wildcard $(PACKAGEDIR_FCL-PROCESS)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FCL-PROCESS)/$(FPCMADE) +endif +else +PACKAGEDIR_FCL-PROCESS= +UNITDIR_FCL-PROCESS:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fcl-process/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FCL-PROCESS),) +UNITDIR_FCL-PROCESS:=$(firstword $(UNITDIR_FCL-PROCESS)) +else +UNITDIR_FCL-PROCESS= +endif +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 +ifdef REQUIRE_PACKAGES_FPMKUNIT +PACKAGEDIR_FPMKUNIT:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Makefile.fpc,$(PACKAGESDIR)))))) +ifneq ($(PACKAGEDIR_FPMKUNIT),) +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX)),) +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX) +else +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX) +else +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX) +else +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +endif +ifdef CHECKDEPEND +$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE): + $(MAKE) -C $(PACKAGEDIR_FPMKUNIT) $(FPCMADE) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE) +endif +else +PACKAGEDIR_FPMKUNIT= +UNITDIR_FPMKUNIT:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FPMKUNIT),) +UNITDIR_FPMKUNIT:=$(firstword $(UNITDIR_FPMKUNIT)) +else +UNITDIR_FPMKUNIT= +endif +endif +ifdef UNITDIR_FPMKUNIT +override COMPILER_UNITDIR+=$(UNITDIR_FPMKUNIT) +endif +ifdef UNITDIR_FPMAKE_FPMKUNIT +override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_FPMKUNIT) +endif +endif ifndef NOCPUDEF override FPCOPTDEF=$(ARCH) endif @@ -1940,12 +1544,16 @@ endif ifndef CROSSBOOTSTRAP ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-XP$(BINUTILSPREFIX) -override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) endif ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-Xr$(RLINKPATH) endif endif +ifndef CROSSCOMPILE +ifneq ($(BINUTILSPREFIX),) +override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) +endif +endif ifdef UNITDIR override FPCOPT+=$(addprefix -Fu,$(UNITDIR)) endif @@ -2045,12 +1653,6 @@ endif endif ifdef LINKSHARED endif -ifdef GCCLIBDIR -override FPCOPT+=-Fl$(GCCLIBDIR) -endif -ifdef OTHERLIBDIR -override FPCOPT+=$(addprefix -Fl,$(OTHERLIBDIR)) -endif ifdef OPT override FPCOPT+=$(OPT) endif @@ -2085,113 +1687,10 @@ EXECPPAS:=@$(PPAS) endif endif endif -.PHONY: fpc_units -ifneq ($(TARGET_UNITS)$(TARGET_IMPLICITUNITS),) -override ALLTARGET+=fpc_units -override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS)) -override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS)) -override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -endif -fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES) ifdef TARGET_RSTS override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS)) override CLEANRSTFILES+=$(RSTFILES) endif -.PHONY: fpc_examples -ifneq ($(TARGET_EXAMPLES),) -HASEXAMPLES=1 -override EXAMPLESOURCEFILES:=$(wildcard $(addsuffix .pp,$(TARGET_EXAMPLES)) $(addsuffix .pas,$(TARGET_EXAMPLES)) $(addsuffix .lpr,$(TARGET_EXAMPLES)) $(addsuffix .dpr,$(TARGET_EXAMPLES))) -override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(TARGET_EXAMPLES)) -override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(TARGET_EXAMPLES)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES))) -override EXAMPLEDBGFILES:=$(addsuffix $(EXEDBGEXT),$(TARGET_EXAMPLES)) -override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES) -override CLEANEXEDBGFILES+=$(EXAMPLEDBGFILES) -ifeq ($(OS_TARGET),os2) -override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES)) -endif -ifeq ($(OS_TARGET),emx) -override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES)) -endif -endif -ifneq ($(TARGET_EXAMPLEDIRS),) -HASEXAMPLES=1 -endif -fpc_examples: all $(EXAMPLEFILES) $(addsuffix _all,$(TARGET_EXAMPLEDIRS)) -.PHONY: fpc_all fpc_smart fpc_debug fpc_release fpc_shared -$(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET) - @$(ECHOREDIR) Compiled > $(FPCMADE) -fpc_all: $(FPCMADE) -fpc_smart: - $(MAKE) all LINKSMART=1 CREATESMART=1 -fpc_debug: - $(MAKE) all DEBUG=1 -fpc_release: - $(MAKE) all RELEASE=1 -.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res -$(COMPILER_UNITTARGETDIR): - $(MKDIRTREE) $(COMPILER_UNITTARGETDIR) -$(COMPILER_TARGETDIR): - $(MKDIRTREE) $(COMPILER_TARGETDIR) -%$(PPUEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(PPUEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.lpr - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.dpr - $(COMPILER) $< - $(EXECPPAS) -%.res: %.rc - windres -i $< -o $@ -vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.inc $(COMPILER_INCLUDEDIR) -vpath %$(OEXT) $(COMPILER_UNITTARGETDIR) -vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR) -.PHONY: fpc_shared -override INSTALLTARGET+=fpc_shared_install -ifndef SHARED_LIBVERSION -SHARED_LIBVERSION=$(FPC_VERSION) -endif -ifndef SHARED_LIBNAME -SHARED_LIBNAME=$(PACKAGE_NAME) -endif -ifndef SHARED_FULLNAME -SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSION)$(SHAREDLIBEXT) -endif -ifndef SHARED_LIBUNITS -SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS) -override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_LIBUNITS)) -endif -fpc_shared: -ifdef HASSHAREDLIB - $(MAKE) all CREATESHARED=1 LINKSHARED=1 CREATESMART=1 -ifneq ($(SHARED_BUILD),n) - $(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR) -endif -else - @$(ECHO) Shared Libraries not supported -endif -fpc_shared_install: -ifneq ($(SHARED_BUILD),n) -ifneq ($(SHARED_LIBUNITS),) -ifneq ($(wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),) - $(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INSTALL_SHAREDDIR) -endif -endif -endif .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall ifdef INSTALL_UNITS override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS)) @@ -2215,9 +1714,6 @@ endif fpc_install: all $(INSTALLTARGET) ifdef INSTALLEXEFILES $(MKDIR) $(INSTALL_BINDIR) -ifdef UPXPROG - -$(UPXPROG) $(INSTALLEXEFILES) -endif $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR) endif ifdef INSTALL_CREATEPACKAGEFPC @@ -2476,7 +1972,6 @@ fpc_baseinfo: @$(ECHO) Date...... $(DATE) @$(ECHO) FPCMake... $(FPCMAKE) @$(ECHO) PPUMove... $(PPUMOVE) - @$(ECHO) Upx....... $(UPXPROG) @$(ECHO) Zip....... $(ZIPPROG) @$(ECHO) @$(ECHO) == Object info == @@ -2533,262 +2028,59 @@ endif fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS)) fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2 fpc_makefiles: fpc_makefile fpc_makefile_dirs -ifeq ($(FULL_TARGET),i386-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-go32v2) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-win32) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-os2) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-beos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-haiku) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-qnx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netware) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-openbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-wdosx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-emx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-watcom) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-wince) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-symbian) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-nativent) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-amiga) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-atari) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-palmos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-macos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-wii) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-win64) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-palmos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-wince) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-gba) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-nds) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-symbian) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),avr-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),armeb-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),armeb-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),mipsel-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifdef TARGET_EXAMPLEDIRS_EXAMPLES -examples_all: - $(MAKE) -C examples all -examples_debug: - $(MAKE) -C examples debug -examples_smart: - $(MAKE) -C examples smart -examples_release: - $(MAKE) -C examples release -examples_units: - $(MAKE) -C examples units -examples_examples: - $(MAKE) -C examples examples -examples_shared: - $(MAKE) -C examples shared -examples_install: - $(MAKE) -C examples install -examples_sourceinstall: - $(MAKE) -C examples sourceinstall -examples_exampleinstall: - $(MAKE) -C examples exampleinstall -examples_distinstall: - $(MAKE) -C examples distinstall -examples_zipinstall: - $(MAKE) -C examples zipinstall -examples_zipsourceinstall: - $(MAKE) -C examples zipsourceinstall -examples_zipexampleinstall: - $(MAKE) -C examples zipexampleinstall -examples_zipdistinstall: - $(MAKE) -C examples zipdistinstall -examples_clean: - $(MAKE) -C examples clean -examples_distclean: - $(MAKE) -C examples distclean -examples_cleanall: - $(MAKE) -C examples cleanall -examples_info: - $(MAKE) -C examples info -examples_makefiles: - $(MAKE) -C examples makefiles +units: examples: - $(MAKE) -C examples all -.PHONY: examples_all examples_debug examples_smart examples_release examples_units examples_examples examples_shared examples_install examples_sourceinstall examples_exampleinstall examples_distinstall examples_zipinstall examples_zipsourceinstall examples_zipexampleinstall examples_zipdistinstall examples_clean examples_distclean examples_cleanall examples_info examples_makefiles examples -endif -all: fpc_all -debug: fpc_debug -smart: fpc_smart -release: fpc_release -units: fpc_units -examples: fpc_examples -shared: fpc_shared -install: fpc_install +shared: sourceinstall: fpc_sourceinstall exampleinstall: fpc_exampleinstall -distinstall: fpc_distinstall zipinstall: fpc_zipinstall zipsourceinstall: fpc_zipsourceinstall zipexampleinstall: fpc_zipexampleinstall zipdistinstall: fpc_zipdistinstall -clean: fpc_clean $(addsuffix _clean,$(TARGET_EXAMPLEDIRS)) -distclean: fpc_distclean -cleanall: fpc_cleanall +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: units examples shared sourceinstall exampleinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info makefiles ifneq ($(wildcard fpcmake.loc),) include fpcmake.loc endif .NOTPARALLEL: +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif diff --git a/packages/ibase/Makefile.fpc b/packages/ibase/Makefile.fpc index 7e1fe4625d..a409db842d 100644 --- a/packages/ibase/Makefile.fpc +++ b/packages/ibase/Makefile.fpc @@ -1,17 +1,13 @@ # -# Makefile.fpc for InterBase bindings +# Makefile.fpc for running fpmake # [package] name=ibase version=2.7.1 -[target] -units=ibase40 ibase60 ibase60dyn -exampledirs=examples - [require] -libc=y +packages=rtl fpmkunit [install] fpcpackage=y @@ -19,12 +15,62 @@ fpcpackage=y [default] fpcdir=../.. -[compiler] -includedir=src -sourcedir=src - -[shared] -build=n +[prerules] +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) +endif +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) +endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) [rules] .NOTPARALLEL: + +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +# If no fpmake exists and (dist)clean is called, do not try to build fpmake, it will +# most often fail because the dependencies are cleared. +# In case of a clean, simply do nothing +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +# In case of a distclean, perform an 'old'-style distclean. This to avoid problems +# when the package is compiled using fpcmake prior to running this clean using fpmake +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +# distinstall also installs the example-sources +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif + diff --git a/packages/ibase/Makefile.fpc.fpcmake b/packages/ibase/Makefile.fpc.fpcmake new file mode 100644 index 0000000000..7e1fe4625d --- /dev/null +++ b/packages/ibase/Makefile.fpc.fpcmake @@ -0,0 +1,30 @@ +# +# Makefile.fpc for InterBase bindings +# + +[package] +name=ibase +version=2.7.1 + +[target] +units=ibase40 ibase60 ibase60dyn +exampledirs=examples + +[require] +libc=y + +[install] +fpcpackage=y + +[default] +fpcdir=../.. + +[compiler] +includedir=src +sourcedir=src + +[shared] +build=n + +[rules] +.NOTPARALLEL: diff --git a/packages/mysql/Makefile b/packages/mysql/Makefile index bdb78b28ea..4ce2e156ac 100644 --- a/packages/mysql/Makefile +++ b/packages/mysql/Makefile @@ -1,5 +1,5 @@ # -# Don't edit, this file is generated by FPCMake Version 2.0.0 [2011/12/04] +# Don't edit, this file is generated by FPCMake Version 2.0.0 [2012/01/09] # 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 @@ -294,765 +294,15 @@ endif endif override PACKAGE_NAME=mysql override PACKAGE_VERSION=2.7.1 -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -endif -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_EXAMPLEDIRS+=examples +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_EXAMPLEDIRS+=examples +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) override INSTALL_FPCPACKAGE=y -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_INCLUDEDIR+=src -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 -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_SOURCEDIR+=src -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 -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_SOURCEDIR+=src -endif -override SHARED_BUILD=n -override SHARED_BUILD=n ifdef REQUIRE_UNITSDIR override UNITSDIR+=$(REQUIRE_UNITSDIR) endif @@ -1249,37 +499,6 @@ endif else CROSSBINDIR= endif -ifeq ($(OS_SOURCE),linux) -ifndef GCCLIBDIR -ifeq ($(CPU_TARGET),i386) -ifneq ($(findstring x86_64,$(shell uname -a)),) -ifeq ($(BINUTILSPREFIX),) -GCCLIBDIR:=$(shell dirname `gcc -m32 -print-libgcc-file-name`) -endif -endif -endif -ifeq ($(CPU_TARGET),powerpc64) -ifeq ($(BINUTILSPREFIX),) -GCCLIBDIR:=$(shell dirname `gcc -m64 -print-libgcc-file-name`) -endif -endif -endif -ifndef GCCLIBDIR -CROSSGCC=$(strip $(wildcard $(addsuffix /$(BINUTILSPREFIX)gcc$(SRCEXEEXT),$(SEARCHPATH)))) -ifneq ($(CROSSGCC),) -GCCLIBDIR:=$(shell dirname `$(CROSSGCC) -print-libgcc-file-name`) -endif -endif -ifndef OTHERLIBDIR -OTHERLIBDIR:=$(shell grep -v "^\#" /etc/ld.so.conf | awk '{ ORS=" "; print $1 }') -endif -endif -ifdef inUnix -ifeq ($(OS_SOURCE),netbsd) -OTHERLIBDIR+=/usr/pkg/lib -endif -export GCCLIBDIR OTHERLIB -endif BATCHEXT=.bat LOADEREXT=.as EXEEXT=.exe @@ -1668,25 +887,6 @@ DATESTR:=$(shell $(DATE) +%Y%m%d) else DATESTR= endif -ifndef UPXPROG -ifeq ($(OS_TARGET),go32v2) -UPXPROG:=1 -endif -ifeq ($(OS_TARGET),win32) -UPXPROG:= -endif -ifdef UPXPROG -UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH)))) -ifeq ($(UPXPROG),) -UPXPROG= -else -UPXPROG:=$(firstword $(UPXPROG)) -endif -else -UPXPROG= -endif -endif -export UPXPROG ZIPOPT=-9 ZIPEXT=.zip ifeq ($(USETAR),bz2) @@ -1696,195 +896,447 @@ else TAROPT=vz TAREXT=.tar.gz endif -override REQUIRE_PACKAGES=rtl +override REQUIRE_PACKAGES=rtl fpmkunit ifeq ($(FULL_TARGET),i386-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-go32v2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-win32) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-os2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-beos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-haiku) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-qnx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netware) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wdosx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-emx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-watcom) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netwlibc) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-nativent) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-iphonesim) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-atari) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-macos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-morphos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-wii) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-win64) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-gba) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-nds) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),avr-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),mipsel-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifdef REQUIRE_PACKAGES_RTL PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))) @@ -1924,6 +1376,158 @@ 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)))))) +ifneq ($(PACKAGEDIR_HASH),) +ifneq ($(wildcard $(PACKAGEDIR_HASH)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_HASH)/$(FPCMADE) +endif +else +PACKAGEDIR_HASH= +UNITDIR_HASH:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /hash/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_HASH),) +UNITDIR_HASH:=$(firstword $(UNITDIR_HASH)) +else +UNITDIR_HASH= +endif +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)))))) +ifneq ($(PACKAGEDIR_PASZLIB),) +ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE) +endif +else +PACKAGEDIR_PASZLIB= +UNITDIR_PASZLIB:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_PASZLIB),) +UNITDIR_PASZLIB:=$(firstword $(UNITDIR_PASZLIB)) +else +UNITDIR_PASZLIB= +endif +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)))))) +ifneq ($(PACKAGEDIR_FCL-PROCESS),) +ifneq ($(wildcard $(PACKAGEDIR_FCL-PROCESS)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FCL-PROCESS)/$(FPCMADE) +endif +else +PACKAGEDIR_FCL-PROCESS= +UNITDIR_FCL-PROCESS:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fcl-process/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FCL-PROCESS),) +UNITDIR_FCL-PROCESS:=$(firstword $(UNITDIR_FCL-PROCESS)) +else +UNITDIR_FCL-PROCESS= +endif +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 +ifdef REQUIRE_PACKAGES_FPMKUNIT +PACKAGEDIR_FPMKUNIT:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Makefile.fpc,$(PACKAGESDIR)))))) +ifneq ($(PACKAGEDIR_FPMKUNIT),) +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX)),) +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX) +else +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX) +else +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX) +else +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +endif +ifdef CHECKDEPEND +$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE): + $(MAKE) -C $(PACKAGEDIR_FPMKUNIT) $(FPCMADE) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE) +endif +else +PACKAGEDIR_FPMKUNIT= +UNITDIR_FPMKUNIT:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FPMKUNIT),) +UNITDIR_FPMKUNIT:=$(firstword $(UNITDIR_FPMKUNIT)) +else +UNITDIR_FPMKUNIT= +endif +endif +ifdef UNITDIR_FPMKUNIT +override COMPILER_UNITDIR+=$(UNITDIR_FPMKUNIT) +endif +ifdef UNITDIR_FPMAKE_FPMKUNIT +override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_FPMKUNIT) +endif +endif ifndef NOCPUDEF override FPCOPTDEF=$(ARCH) endif @@ -1940,12 +1544,16 @@ endif ifndef CROSSBOOTSTRAP ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-XP$(BINUTILSPREFIX) -override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) endif ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-Xr$(RLINKPATH) endif endif +ifndef CROSSCOMPILE +ifneq ($(BINUTILSPREFIX),) +override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) +endif +endif ifdef UNITDIR override FPCOPT+=$(addprefix -Fu,$(UNITDIR)) endif @@ -2045,12 +1653,6 @@ endif endif ifdef LINKSHARED endif -ifdef GCCLIBDIR -override FPCOPT+=-Fl$(GCCLIBDIR) -endif -ifdef OTHERLIBDIR -override FPCOPT+=$(addprefix -Fl,$(OTHERLIBDIR)) -endif ifdef OPT override FPCOPT+=$(OPT) endif @@ -2085,113 +1687,10 @@ EXECPPAS:=@$(PPAS) endif endif endif -.PHONY: fpc_units -ifneq ($(TARGET_UNITS)$(TARGET_IMPLICITUNITS),) -override ALLTARGET+=fpc_units -override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS)) -override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS)) -override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -endif -fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES) ifdef TARGET_RSTS override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS)) override CLEANRSTFILES+=$(RSTFILES) endif -.PHONY: fpc_examples -ifneq ($(TARGET_EXAMPLES),) -HASEXAMPLES=1 -override EXAMPLESOURCEFILES:=$(wildcard $(addsuffix .pp,$(TARGET_EXAMPLES)) $(addsuffix .pas,$(TARGET_EXAMPLES)) $(addsuffix .lpr,$(TARGET_EXAMPLES)) $(addsuffix .dpr,$(TARGET_EXAMPLES))) -override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(TARGET_EXAMPLES)) -override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(TARGET_EXAMPLES)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES))) -override EXAMPLEDBGFILES:=$(addsuffix $(EXEDBGEXT),$(TARGET_EXAMPLES)) -override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES) -override CLEANEXEDBGFILES+=$(EXAMPLEDBGFILES) -ifeq ($(OS_TARGET),os2) -override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES)) -endif -ifeq ($(OS_TARGET),emx) -override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES)) -endif -endif -ifneq ($(TARGET_EXAMPLEDIRS),) -HASEXAMPLES=1 -endif -fpc_examples: all $(EXAMPLEFILES) $(addsuffix _all,$(TARGET_EXAMPLEDIRS)) -.PHONY: fpc_all fpc_smart fpc_debug fpc_release fpc_shared -$(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET) - @$(ECHOREDIR) Compiled > $(FPCMADE) -fpc_all: $(FPCMADE) -fpc_smart: - $(MAKE) all LINKSMART=1 CREATESMART=1 -fpc_debug: - $(MAKE) all DEBUG=1 -fpc_release: - $(MAKE) all RELEASE=1 -.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res -$(COMPILER_UNITTARGETDIR): - $(MKDIRTREE) $(COMPILER_UNITTARGETDIR) -$(COMPILER_TARGETDIR): - $(MKDIRTREE) $(COMPILER_TARGETDIR) -%$(PPUEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(PPUEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.lpr - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.dpr - $(COMPILER) $< - $(EXECPPAS) -%.res: %.rc - windres -i $< -o $@ -vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.inc $(COMPILER_INCLUDEDIR) -vpath %$(OEXT) $(COMPILER_UNITTARGETDIR) -vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR) -.PHONY: fpc_shared -override INSTALLTARGET+=fpc_shared_install -ifndef SHARED_LIBVERSION -SHARED_LIBVERSION=$(FPC_VERSION) -endif -ifndef SHARED_LIBNAME -SHARED_LIBNAME=$(PACKAGE_NAME) -endif -ifndef SHARED_FULLNAME -SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSION)$(SHAREDLIBEXT) -endif -ifndef SHARED_LIBUNITS -SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS) -override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_LIBUNITS)) -endif -fpc_shared: -ifdef HASSHAREDLIB - $(MAKE) all CREATESHARED=1 LINKSHARED=1 CREATESMART=1 -ifneq ($(SHARED_BUILD),n) - $(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR) -endif -else - @$(ECHO) Shared Libraries not supported -endif -fpc_shared_install: -ifneq ($(SHARED_BUILD),n) -ifneq ($(SHARED_LIBUNITS),) -ifneq ($(wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),) - $(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INSTALL_SHAREDDIR) -endif -endif -endif .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall ifdef INSTALL_UNITS override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS)) @@ -2215,9 +1714,6 @@ endif fpc_install: all $(INSTALLTARGET) ifdef INSTALLEXEFILES $(MKDIR) $(INSTALL_BINDIR) -ifdef UPXPROG - -$(UPXPROG) $(INSTALLEXEFILES) -endif $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR) endif ifdef INSTALL_CREATEPACKAGEFPC @@ -2476,7 +1972,6 @@ fpc_baseinfo: @$(ECHO) Date...... $(DATE) @$(ECHO) FPCMake... $(FPCMAKE) @$(ECHO) PPUMove... $(PPUMOVE) - @$(ECHO) Upx....... $(UPXPROG) @$(ECHO) Zip....... $(ZIPPROG) @$(ECHO) @$(ECHO) == Object info == @@ -2533,262 +2028,59 @@ endif fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS)) fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2 fpc_makefiles: fpc_makefile fpc_makefile_dirs -ifeq ($(FULL_TARGET),i386-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-go32v2) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-win32) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-os2) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-beos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-haiku) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-qnx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netware) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-openbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-wdosx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-emx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-watcom) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-wince) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-symbian) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-nativent) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-amiga) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-atari) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-palmos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-macos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-wii) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-win64) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-palmos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-wince) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-gba) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-nds) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-symbian) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),avr-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),armeb-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),armeb-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),mipsel-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifdef TARGET_EXAMPLEDIRS_EXAMPLES -examples_all: - $(MAKE) -C examples all -examples_debug: - $(MAKE) -C examples debug -examples_smart: - $(MAKE) -C examples smart -examples_release: - $(MAKE) -C examples release -examples_units: - $(MAKE) -C examples units -examples_examples: - $(MAKE) -C examples examples -examples_shared: - $(MAKE) -C examples shared -examples_install: - $(MAKE) -C examples install -examples_sourceinstall: - $(MAKE) -C examples sourceinstall -examples_exampleinstall: - $(MAKE) -C examples exampleinstall -examples_distinstall: - $(MAKE) -C examples distinstall -examples_zipinstall: - $(MAKE) -C examples zipinstall -examples_zipsourceinstall: - $(MAKE) -C examples zipsourceinstall -examples_zipexampleinstall: - $(MAKE) -C examples zipexampleinstall -examples_zipdistinstall: - $(MAKE) -C examples zipdistinstall -examples_clean: - $(MAKE) -C examples clean -examples_distclean: - $(MAKE) -C examples distclean -examples_cleanall: - $(MAKE) -C examples cleanall -examples_info: - $(MAKE) -C examples info -examples_makefiles: - $(MAKE) -C examples makefiles +units: examples: - $(MAKE) -C examples all -.PHONY: examples_all examples_debug examples_smart examples_release examples_units examples_examples examples_shared examples_install examples_sourceinstall examples_exampleinstall examples_distinstall examples_zipinstall examples_zipsourceinstall examples_zipexampleinstall examples_zipdistinstall examples_clean examples_distclean examples_cleanall examples_info examples_makefiles examples -endif -all: fpc_all -debug: fpc_debug -smart: fpc_smart -release: fpc_release -units: fpc_units -examples: fpc_examples -shared: fpc_shared -install: fpc_install +shared: sourceinstall: fpc_sourceinstall exampleinstall: fpc_exampleinstall -distinstall: fpc_distinstall zipinstall: fpc_zipinstall zipsourceinstall: fpc_zipsourceinstall zipexampleinstall: fpc_zipexampleinstall zipdistinstall: fpc_zipdistinstall -clean: fpc_clean $(addsuffix _clean,$(TARGET_EXAMPLEDIRS)) -distclean: fpc_distclean -cleanall: fpc_cleanall +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: units examples shared sourceinstall exampleinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info makefiles ifneq ($(wildcard fpcmake.loc),) include fpcmake.loc endif .NOTPARALLEL: +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif diff --git a/packages/mysql/Makefile.fpc b/packages/mysql/Makefile.fpc index 511bc3e09f..3bddabe888 100644 --- a/packages/mysql/Makefile.fpc +++ b/packages/mysql/Makefile.fpc @@ -1,17 +1,13 @@ # -# Makefile.fpc for MySql bindings +# Makefile.fpc for running fpmake # [package] name=mysql version=2.7.1 -[target] -units=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn -exampledirs=examples - [require] -libc=y +packages=rtl fpmkunit [install] fpcpackage=y @@ -19,13 +15,62 @@ fpcpackage=y [default] fpcdir=../.. -[shared] -build=n - -[compiler] -includedir=src -sourcedir=src +[prerules] +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) +endif +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) +endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) [rules] .NOTPARALLEL: +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +# If no fpmake exists and (dist)clean is called, do not try to build fpmake, it will +# most often fail because the dependencies are cleared. +# In case of a clean, simply do nothing +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +# In case of a distclean, perform an 'old'-style distclean. This to avoid problems +# when the package is compiled using fpcmake prior to running this clean using fpmake +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +# distinstall also installs the example-sources +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif + diff --git a/packages/mysql/Makefile.fpc.fpcmake b/packages/mysql/Makefile.fpc.fpcmake new file mode 100644 index 0000000000..511bc3e09f --- /dev/null +++ b/packages/mysql/Makefile.fpc.fpcmake @@ -0,0 +1,31 @@ +# +# Makefile.fpc for MySql bindings +# + +[package] +name=mysql +version=2.7.1 + +[target] +units=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn mysql51 mysql51dyn +exampledirs=examples + +[require] +libc=y + +[install] +fpcpackage=y + +[default] +fpcdir=../.. + +[shared] +build=n + +[compiler] +includedir=src +sourcedir=src + +[rules] +.NOTPARALLEL: + diff --git a/packages/numlib/Makefile b/packages/numlib/Makefile index 01b904ac9d..273920d8c3 100644 --- a/packages/numlib/Makefile +++ b/packages/numlib/Makefile @@ -1,5 +1,5 @@ # -# Don't edit, this file is generated by FPCMake Version 2.0.0 [2011/12/04] +# Don't edit, this file is generated by FPCMake Version 2.0.0 [2012/01/09] # 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 @@ -294,574 +294,15 @@ endif endif override PACKAGE_NAME=numlib override PACKAGE_VERSION=2.7.1 -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_UNITS+=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) override INSTALL_FPCPACKAGE=y -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_INCLUDEDIR+=src -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 -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),sparc-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif ifdef REQUIRE_UNITSDIR override UNITSDIR+=$(REQUIRE_UNITSDIR) endif @@ -1446,25 +887,6 @@ DATESTR:=$(shell $(DATE) +%Y%m%d) else DATESTR= endif -ifndef UPXPROG -ifeq ($(OS_TARGET),go32v2) -UPXPROG:=1 -endif -ifeq ($(OS_TARGET),win32) -UPXPROG:= -endif -ifdef UPXPROG -UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH)))) -ifeq ($(UPXPROG),) -UPXPROG= -else -UPXPROG:=$(firstword $(UPXPROG)) -endif -else -UPXPROG= -endif -endif -export UPXPROG ZIPOPT=-9 ZIPEXT=.zip ifeq ($(USETAR),bz2) @@ -1474,195 +896,447 @@ else TAROPT=vz TAREXT=.tar.gz endif -override REQUIRE_PACKAGES=rtl +override REQUIRE_PACKAGES=rtl fpmkunit ifeq ($(FULL_TARGET),i386-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-go32v2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-win32) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-os2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-beos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-haiku) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-qnx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netware) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wdosx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-emx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-watcom) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netwlibc) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-nativent) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-iphonesim) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-atari) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-macos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-morphos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-wii) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-win64) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-gba) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-nds) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),avr-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),mipsel-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifdef REQUIRE_PACKAGES_RTL PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))) @@ -1702,6 +1376,158 @@ 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)))))) +ifneq ($(PACKAGEDIR_HASH),) +ifneq ($(wildcard $(PACKAGEDIR_HASH)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_HASH)/$(FPCMADE) +endif +else +PACKAGEDIR_HASH= +UNITDIR_HASH:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /hash/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_HASH),) +UNITDIR_HASH:=$(firstword $(UNITDIR_HASH)) +else +UNITDIR_HASH= +endif +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)))))) +ifneq ($(PACKAGEDIR_PASZLIB),) +ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE) +endif +else +PACKAGEDIR_PASZLIB= +UNITDIR_PASZLIB:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_PASZLIB),) +UNITDIR_PASZLIB:=$(firstword $(UNITDIR_PASZLIB)) +else +UNITDIR_PASZLIB= +endif +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)))))) +ifneq ($(PACKAGEDIR_FCL-PROCESS),) +ifneq ($(wildcard $(PACKAGEDIR_FCL-PROCESS)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FCL-PROCESS)/$(FPCMADE) +endif +else +PACKAGEDIR_FCL-PROCESS= +UNITDIR_FCL-PROCESS:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fcl-process/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FCL-PROCESS),) +UNITDIR_FCL-PROCESS:=$(firstword $(UNITDIR_FCL-PROCESS)) +else +UNITDIR_FCL-PROCESS= +endif +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 +ifdef REQUIRE_PACKAGES_FPMKUNIT +PACKAGEDIR_FPMKUNIT:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Makefile.fpc,$(PACKAGESDIR)))))) +ifneq ($(PACKAGEDIR_FPMKUNIT),) +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX)),) +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX) +else +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX) +else +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX) +else +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +endif +ifdef CHECKDEPEND +$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE): + $(MAKE) -C $(PACKAGEDIR_FPMKUNIT) $(FPCMADE) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE) +endif +else +PACKAGEDIR_FPMKUNIT= +UNITDIR_FPMKUNIT:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FPMKUNIT),) +UNITDIR_FPMKUNIT:=$(firstword $(UNITDIR_FPMKUNIT)) +else +UNITDIR_FPMKUNIT= +endif +endif +ifdef UNITDIR_FPMKUNIT +override COMPILER_UNITDIR+=$(UNITDIR_FPMKUNIT) +endif +ifdef UNITDIR_FPMAKE_FPMKUNIT +override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_FPMKUNIT) +endif +endif ifndef NOCPUDEF override FPCOPTDEF=$(ARCH) endif @@ -1718,12 +1544,16 @@ endif ifndef CROSSBOOTSTRAP ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-XP$(BINUTILSPREFIX) -override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) endif ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-Xr$(RLINKPATH) endif endif +ifndef CROSSCOMPILE +ifneq ($(BINUTILSPREFIX),) +override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) +endif +endif ifdef UNITDIR override FPCOPT+=$(addprefix -Fu,$(UNITDIR)) endif @@ -1857,93 +1687,10 @@ EXECPPAS:=@$(PPAS) endif endif endif -.PHONY: fpc_units -ifneq ($(TARGET_UNITS)$(TARGET_IMPLICITUNITS),) -override ALLTARGET+=fpc_units -override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS)) -override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS)) -override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -endif -fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES) ifdef TARGET_RSTS override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS)) override CLEANRSTFILES+=$(RSTFILES) endif -.PHONY: fpc_all fpc_smart fpc_debug fpc_release fpc_shared -$(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET) - @$(ECHOREDIR) Compiled > $(FPCMADE) -fpc_all: $(FPCMADE) -fpc_smart: - $(MAKE) all LINKSMART=1 CREATESMART=1 -fpc_debug: - $(MAKE) all DEBUG=1 -fpc_release: - $(MAKE) all RELEASE=1 -.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res -$(COMPILER_UNITTARGETDIR): - $(MKDIRTREE) $(COMPILER_UNITTARGETDIR) -$(COMPILER_TARGETDIR): - $(MKDIRTREE) $(COMPILER_TARGETDIR) -%$(PPUEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(PPUEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.lpr - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.dpr - $(COMPILER) $< - $(EXECPPAS) -%.res: %.rc - windres -i $< -o $@ -vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.inc $(COMPILER_INCLUDEDIR) -vpath %$(OEXT) $(COMPILER_UNITTARGETDIR) -vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR) -.PHONY: fpc_shared -override INSTALLTARGET+=fpc_shared_install -ifndef SHARED_LIBVERSION -SHARED_LIBVERSION=$(FPC_VERSION) -endif -ifndef SHARED_LIBNAME -SHARED_LIBNAME=$(PACKAGE_NAME) -endif -ifndef SHARED_FULLNAME -SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSION)$(SHAREDLIBEXT) -endif -ifndef SHARED_LIBUNITS -SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS) -override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_LIBUNITS)) -endif -fpc_shared: -ifdef HASSHAREDLIB - $(MAKE) all CREATESHARED=1 LINKSHARED=1 CREATESMART=1 -ifneq ($(SHARED_BUILD),n) - $(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR) -endif -else - @$(ECHO) Shared Libraries not supported -endif -fpc_shared_install: -ifneq ($(SHARED_BUILD),n) -ifneq ($(SHARED_LIBUNITS),) -ifneq ($(wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),) - $(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INSTALL_SHAREDDIR) -endif -endif -endif .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall ifdef INSTALL_UNITS override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS)) @@ -1967,9 +1714,6 @@ endif fpc_install: all $(INSTALLTARGET) ifdef INSTALLEXEFILES $(MKDIR) $(INSTALL_BINDIR) -ifdef UPXPROG - -$(UPXPROG) $(INSTALLEXEFILES) -endif $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR) endif ifdef INSTALL_CREATEPACKAGEFPC @@ -2228,7 +1972,6 @@ fpc_baseinfo: @$(ECHO) Date...... $(DATE) @$(ECHO) FPCMake... $(FPCMAKE) @$(ECHO) PPUMove... $(PPUMOVE) - @$(ECHO) Upx....... $(UPXPROG) @$(ECHO) Zip....... $(ZIPPROG) @$(ECHO) @$(ECHO) == Object info == @@ -2285,28 +2028,59 @@ endif fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS)) fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2 fpc_makefiles: fpc_makefile fpc_makefile_dirs -all: fpc_all -debug: fpc_debug -smart: fpc_smart -release: fpc_release -units: fpc_units +units: examples: -shared: fpc_shared -install: fpc_install +shared: sourceinstall: fpc_sourceinstall exampleinstall: fpc_exampleinstall -distinstall: fpc_distinstall zipinstall: fpc_zipinstall zipsourceinstall: fpc_zipsourceinstall zipexampleinstall: fpc_zipexampleinstall zipdistinstall: fpc_zipdistinstall -clean: fpc_clean -distclean: fpc_distclean -cleanall: fpc_cleanall +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: units examples shared sourceinstall exampleinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info makefiles ifneq ($(wildcard fpcmake.loc),) include fpcmake.loc endif .NOTPARALLEL: +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif diff --git a/packages/numlib/Makefile.fpc b/packages/numlib/Makefile.fpc index 1723d85749..b53a887af3 100644 --- a/packages/numlib/Makefile.fpc +++ b/packages/numlib/Makefile.fpc @@ -1,14 +1,13 @@ # -# Makefile.fpc for NumLib +# Makefile.fpc for running fpmake # [package] name=numlib version=2.7.1 -[target] -# warning, tpnumlib is a library, not a unit. -units=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib +[require] +packages=rtl fpmkunit [install] fpcpackage=y @@ -16,9 +15,62 @@ fpcpackage=y [default] fpcdir=../.. -[compiler] -includedir=src -sourcedir=src tests examples +[prerules] +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) +endif +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) +endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) [rules] .NOTPARALLEL: + +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +# If no fpmake exists and (dist)clean is called, do not try to build fpmake, it will +# most often fail because the dependencies are cleared. +# In case of a clean, simply do nothing +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +# In case of a distclean, perform an 'old'-style distclean. This to avoid problems +# when the package is compiled using fpcmake prior to running this clean using fpmake +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +# distinstall also installs the example-sources +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif + diff --git a/packages/numlib/Makefile.fpc.fpcmake b/packages/numlib/Makefile.fpc.fpcmake new file mode 100644 index 0000000000..1723d85749 --- /dev/null +++ b/packages/numlib/Makefile.fpc.fpcmake @@ -0,0 +1,24 @@ +# +# Makefile.fpc for NumLib +# + +[package] +name=numlib +version=2.7.1 + +[target] +# warning, tpnumlib is a library, not a unit. +units=typ omv dsl mdt det eig eigh1 eigh2 int inv iom ipf ode roo sle spe spl numlib + +[install] +fpcpackage=y + +[default] +fpcdir=../.. + +[compiler] +includedir=src +sourcedir=src tests examples + +[rules] +.NOTPARALLEL: diff --git a/packages/nvapi/Makefile b/packages/nvapi/Makefile index 0735ebdea9..7ccced8b44 100644 --- a/packages/nvapi/Makefile +++ b/packages/nvapi/Makefile @@ -1,5 +1,5 @@ # -# Don't edit, this file is generated by FPCMake Version 2.0.0 [2011/12/04] +# Don't edit, this file is generated by FPCMake Version 2.0.0 [2012/01/09] # 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 @@ -294,577 +294,15 @@ endif endif override PACKAGE_NAME=nvapi override PACKAGE_VERSION=2.7.1 -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_UNITS+=nvapi +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_UNITS+=nvapi -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_UNITS+=nvapi +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) override INSTALL_FPCPACKAGE=y -override INSTALL_FPCSUBDIR=packages -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_INCLUDEDIR+=src -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 -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_SOURCEDIR+=src -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 -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_SOURCEDIR+=src -endif -override SHARED_BUILD=n -override SHARED_BUILD=n ifdef REQUIRE_UNITSDIR override UNITSDIR+=$(REQUIRE_UNITSDIR) endif @@ -1449,25 +887,6 @@ DATESTR:=$(shell $(DATE) +%Y%m%d) else DATESTR= endif -ifndef UPXPROG -ifeq ($(OS_TARGET),go32v2) -UPXPROG:=1 -endif -ifeq ($(OS_TARGET),win32) -UPXPROG:= -endif -ifdef UPXPROG -UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH)))) -ifeq ($(UPXPROG),) -UPXPROG= -else -UPXPROG:=$(firstword $(UPXPROG)) -endif -else -UPXPROG= -endif -endif -export UPXPROG ZIPOPT=-9 ZIPEXT=.zip ifeq ($(USETAR),bz2) @@ -1477,195 +896,447 @@ else TAROPT=vz TAREXT=.tar.gz endif -override REQUIRE_PACKAGES=rtl +override REQUIRE_PACKAGES=rtl fpmkunit ifeq ($(FULL_TARGET),i386-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-go32v2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-win32) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-os2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-beos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-haiku) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-qnx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netware) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wdosx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-emx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-watcom) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netwlibc) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-nativent) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-iphonesim) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-atari) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-macos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-morphos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-wii) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-win64) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-gba) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-nds) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),avr-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),mipsel-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifdef REQUIRE_PACKAGES_RTL PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))) @@ -1705,6 +1376,158 @@ 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)))))) +ifneq ($(PACKAGEDIR_HASH),) +ifneq ($(wildcard $(PACKAGEDIR_HASH)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_HASH)/$(FPCMADE) +endif +else +PACKAGEDIR_HASH= +UNITDIR_HASH:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /hash/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_HASH),) +UNITDIR_HASH:=$(firstword $(UNITDIR_HASH)) +else +UNITDIR_HASH= +endif +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)))))) +ifneq ($(PACKAGEDIR_PASZLIB),) +ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE) +endif +else +PACKAGEDIR_PASZLIB= +UNITDIR_PASZLIB:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_PASZLIB),) +UNITDIR_PASZLIB:=$(firstword $(UNITDIR_PASZLIB)) +else +UNITDIR_PASZLIB= +endif +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)))))) +ifneq ($(PACKAGEDIR_FCL-PROCESS),) +ifneq ($(wildcard $(PACKAGEDIR_FCL-PROCESS)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FCL-PROCESS)/$(FPCMADE) +endif +else +PACKAGEDIR_FCL-PROCESS= +UNITDIR_FCL-PROCESS:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fcl-process/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FCL-PROCESS),) +UNITDIR_FCL-PROCESS:=$(firstword $(UNITDIR_FCL-PROCESS)) +else +UNITDIR_FCL-PROCESS= +endif +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 +ifdef REQUIRE_PACKAGES_FPMKUNIT +PACKAGEDIR_FPMKUNIT:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Makefile.fpc,$(PACKAGESDIR)))))) +ifneq ($(PACKAGEDIR_FPMKUNIT),) +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX)),) +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX) +else +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX) +else +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX) +else +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +endif +ifdef CHECKDEPEND +$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE): + $(MAKE) -C $(PACKAGEDIR_FPMKUNIT) $(FPCMADE) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE) +endif +else +PACKAGEDIR_FPMKUNIT= +UNITDIR_FPMKUNIT:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FPMKUNIT),) +UNITDIR_FPMKUNIT:=$(firstword $(UNITDIR_FPMKUNIT)) +else +UNITDIR_FPMKUNIT= +endif +endif +ifdef UNITDIR_FPMKUNIT +override COMPILER_UNITDIR+=$(UNITDIR_FPMKUNIT) +endif +ifdef UNITDIR_FPMAKE_FPMKUNIT +override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_FPMKUNIT) +endif +endif ifndef NOCPUDEF override FPCOPTDEF=$(ARCH) endif @@ -1721,12 +1544,16 @@ endif ifndef CROSSBOOTSTRAP ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-XP$(BINUTILSPREFIX) -override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) endif ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-Xr$(RLINKPATH) endif endif +ifndef CROSSCOMPILE +ifneq ($(BINUTILSPREFIX),) +override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) +endif +endif ifdef UNITDIR override FPCOPT+=$(addprefix -Fu,$(UNITDIR)) endif @@ -1860,93 +1687,10 @@ EXECPPAS:=@$(PPAS) endif endif endif -.PHONY: fpc_units -ifneq ($(TARGET_UNITS)$(TARGET_IMPLICITUNITS),) -override ALLTARGET+=fpc_units -override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS)) -override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS)) -override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -endif -fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES) ifdef TARGET_RSTS override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS)) override CLEANRSTFILES+=$(RSTFILES) endif -.PHONY: fpc_all fpc_smart fpc_debug fpc_release fpc_shared -$(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET) - @$(ECHOREDIR) Compiled > $(FPCMADE) -fpc_all: $(FPCMADE) -fpc_smart: - $(MAKE) all LINKSMART=1 CREATESMART=1 -fpc_debug: - $(MAKE) all DEBUG=1 -fpc_release: - $(MAKE) all RELEASE=1 -.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res -$(COMPILER_UNITTARGETDIR): - $(MKDIRTREE) $(COMPILER_UNITTARGETDIR) -$(COMPILER_TARGETDIR): - $(MKDIRTREE) $(COMPILER_TARGETDIR) -%$(PPUEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(PPUEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.lpr - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.dpr - $(COMPILER) $< - $(EXECPPAS) -%.res: %.rc - windres -i $< -o $@ -vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.inc $(COMPILER_INCLUDEDIR) -vpath %$(OEXT) $(COMPILER_UNITTARGETDIR) -vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR) -.PHONY: fpc_shared -override INSTALLTARGET+=fpc_shared_install -ifndef SHARED_LIBVERSION -SHARED_LIBVERSION=$(FPC_VERSION) -endif -ifndef SHARED_LIBNAME -SHARED_LIBNAME=$(PACKAGE_NAME) -endif -ifndef SHARED_FULLNAME -SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSION)$(SHAREDLIBEXT) -endif -ifndef SHARED_LIBUNITS -SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS) -override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_LIBUNITS)) -endif -fpc_shared: -ifdef HASSHAREDLIB - $(MAKE) all CREATESHARED=1 LINKSHARED=1 CREATESMART=1 -ifneq ($(SHARED_BUILD),n) - $(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR) -endif -else - @$(ECHO) Shared Libraries not supported -endif -fpc_shared_install: -ifneq ($(SHARED_BUILD),n) -ifneq ($(SHARED_LIBUNITS),) -ifneq ($(wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),) - $(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INSTALL_SHAREDDIR) -endif -endif -endif .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall ifdef INSTALL_UNITS override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS)) @@ -1970,9 +1714,6 @@ endif fpc_install: all $(INSTALLTARGET) ifdef INSTALLEXEFILES $(MKDIR) $(INSTALL_BINDIR) -ifdef UPXPROG - -$(UPXPROG) $(INSTALLEXEFILES) -endif $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR) endif ifdef INSTALL_CREATEPACKAGEFPC @@ -2231,7 +1972,6 @@ fpc_baseinfo: @$(ECHO) Date...... $(DATE) @$(ECHO) FPCMake... $(FPCMAKE) @$(ECHO) PPUMove... $(PPUMOVE) - @$(ECHO) Upx....... $(UPXPROG) @$(ECHO) Zip....... $(ZIPPROG) @$(ECHO) @$(ECHO) == Object info == @@ -2288,28 +2028,59 @@ endif fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS)) fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2 fpc_makefiles: fpc_makefile fpc_makefile_dirs -all: fpc_all -debug: fpc_debug -smart: fpc_smart -release: fpc_release -units: fpc_units +units: examples: -shared: fpc_shared -install: fpc_install +shared: sourceinstall: fpc_sourceinstall exampleinstall: fpc_exampleinstall -distinstall: fpc_distinstall zipinstall: fpc_zipinstall zipsourceinstall: fpc_zipsourceinstall zipexampleinstall: fpc_zipexampleinstall zipdistinstall: fpc_zipdistinstall -clean: fpc_clean -distclean: fpc_distclean -cleanall: fpc_cleanall +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: units examples shared sourceinstall exampleinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info makefiles ifneq ($(wildcard fpcmake.loc),) include fpcmake.loc endif .NOTPARALLEL: +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif diff --git a/packages/nvapi/Makefile.fpc b/packages/nvapi/Makefile.fpc index 5b8479a1cd..4bed212d2a 100644 --- a/packages/nvapi/Makefile.fpc +++ b/packages/nvapi/Makefile.fpc @@ -1,27 +1,76 @@ # -# Makefile.fpc for Free Pascal NvAPI Packages +# Makefile.fpc for running fpmake # [package] name=nvapi version=2.7.1 -[target] -units=nvapi - -[compiler] -includedir=src -sourcedir=src +[require] +packages=rtl fpmkunit [install] fpcpackage=y -fpcsubdir=packages [default] fpcdir=../.. -[shared] -build=n +[prerules] +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) +endif +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) +endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) [rules] .NOTPARALLEL: + +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +# If no fpmake exists and (dist)clean is called, do not try to build fpmake, it will +# most often fail because the dependencies are cleared. +# In case of a clean, simply do nothing +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +# In case of a distclean, perform an 'old'-style distclean. This to avoid problems +# when the package is compiled using fpcmake prior to running this clean using fpmake +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +# distinstall also installs the example-sources +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif + diff --git a/packages/nvapi/Makefile.fpc.fpcmake b/packages/nvapi/Makefile.fpc.fpcmake new file mode 100644 index 0000000000..5b8479a1cd --- /dev/null +++ b/packages/nvapi/Makefile.fpc.fpcmake @@ -0,0 +1,27 @@ +# +# Makefile.fpc for Free Pascal NvAPI Packages +# + +[package] +name=nvapi +version=2.7.1 + +[target] +units=nvapi + +[compiler] +includedir=src +sourcedir=src + +[install] +fpcpackage=y +fpcsubdir=packages + +[default] +fpcdir=../.. + +[shared] +build=n + +[rules] +.NOTPARALLEL: diff --git a/packages/odbc/Makefile b/packages/odbc/Makefile index 753a8b4389..c6ac6a4126 100644 --- a/packages/odbc/Makefile +++ b/packages/odbc/Makefile @@ -1,5 +1,5 @@ # -# Don't edit, this file is generated by FPCMake Version 2.0.0 [2011/12/04] +# Don't edit, this file is generated by FPCMake Version 2.0.0 [2012/01/09] # 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 @@ -294,765 +294,15 @@ endif endif override PACKAGE_NAME=odbc override PACKAGE_VERSION=2.7.1 -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_UNITS+=odbcsql odbcsqldyn -endif -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_EXAMPLEDIRS+=examples +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_EXAMPLEDIRS+=examples +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) override INSTALL_FPCPACKAGE=y -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_INCLUDEDIR+=src -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 -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_SOURCEDIR+=src -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 -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_SOURCEDIR+=src -endif -override SHARED_BUILD=n -override SHARED_BUILD=n ifdef REQUIRE_UNITSDIR override UNITSDIR+=$(REQUIRE_UNITSDIR) endif @@ -1249,37 +499,6 @@ endif else CROSSBINDIR= endif -ifeq ($(OS_SOURCE),linux) -ifndef GCCLIBDIR -ifeq ($(CPU_TARGET),i386) -ifneq ($(findstring x86_64,$(shell uname -a)),) -ifeq ($(BINUTILSPREFIX),) -GCCLIBDIR:=$(shell dirname `gcc -m32 -print-libgcc-file-name`) -endif -endif -endif -ifeq ($(CPU_TARGET),powerpc64) -ifeq ($(BINUTILSPREFIX),) -GCCLIBDIR:=$(shell dirname `gcc -m64 -print-libgcc-file-name`) -endif -endif -endif -ifndef GCCLIBDIR -CROSSGCC=$(strip $(wildcard $(addsuffix /$(BINUTILSPREFIX)gcc$(SRCEXEEXT),$(SEARCHPATH)))) -ifneq ($(CROSSGCC),) -GCCLIBDIR:=$(shell dirname `$(CROSSGCC) -print-libgcc-file-name`) -endif -endif -ifndef OTHERLIBDIR -OTHERLIBDIR:=$(shell grep -v "^\#" /etc/ld.so.conf | awk '{ ORS=" "; print $1 }') -endif -endif -ifdef inUnix -ifeq ($(OS_SOURCE),netbsd) -OTHERLIBDIR+=/usr/pkg/lib -endif -export GCCLIBDIR OTHERLIB -endif BATCHEXT=.bat LOADEREXT=.as EXEEXT=.exe @@ -1668,25 +887,6 @@ DATESTR:=$(shell $(DATE) +%Y%m%d) else DATESTR= endif -ifndef UPXPROG -ifeq ($(OS_TARGET),go32v2) -UPXPROG:=1 -endif -ifeq ($(OS_TARGET),win32) -UPXPROG:= -endif -ifdef UPXPROG -UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH)))) -ifeq ($(UPXPROG),) -UPXPROG= -else -UPXPROG:=$(firstword $(UPXPROG)) -endif -else -UPXPROG= -endif -endif -export UPXPROG ZIPOPT=-9 ZIPEXT=.zip ifeq ($(USETAR),bz2) @@ -1696,195 +896,447 @@ else TAROPT=vz TAREXT=.tar.gz endif -override REQUIRE_PACKAGES=rtl +override REQUIRE_PACKAGES=rtl fpmkunit ifeq ($(FULL_TARGET),i386-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-go32v2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-win32) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-os2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-beos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-haiku) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-qnx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netware) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wdosx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-emx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-watcom) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netwlibc) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-nativent) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-iphonesim) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-atari) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-macos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-morphos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-wii) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-win64) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-gba) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-nds) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),avr-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),mipsel-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifdef REQUIRE_PACKAGES_RTL PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))) @@ -1924,6 +1376,158 @@ 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)))))) +ifneq ($(PACKAGEDIR_HASH),) +ifneq ($(wildcard $(PACKAGEDIR_HASH)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_HASH)/$(FPCMADE) +endif +else +PACKAGEDIR_HASH= +UNITDIR_HASH:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /hash/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_HASH),) +UNITDIR_HASH:=$(firstword $(UNITDIR_HASH)) +else +UNITDIR_HASH= +endif +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)))))) +ifneq ($(PACKAGEDIR_PASZLIB),) +ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE) +endif +else +PACKAGEDIR_PASZLIB= +UNITDIR_PASZLIB:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_PASZLIB),) +UNITDIR_PASZLIB:=$(firstword $(UNITDIR_PASZLIB)) +else +UNITDIR_PASZLIB= +endif +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)))))) +ifneq ($(PACKAGEDIR_FCL-PROCESS),) +ifneq ($(wildcard $(PACKAGEDIR_FCL-PROCESS)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FCL-PROCESS)/$(FPCMADE) +endif +else +PACKAGEDIR_FCL-PROCESS= +UNITDIR_FCL-PROCESS:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fcl-process/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FCL-PROCESS),) +UNITDIR_FCL-PROCESS:=$(firstword $(UNITDIR_FCL-PROCESS)) +else +UNITDIR_FCL-PROCESS= +endif +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 +ifdef REQUIRE_PACKAGES_FPMKUNIT +PACKAGEDIR_FPMKUNIT:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Makefile.fpc,$(PACKAGESDIR)))))) +ifneq ($(PACKAGEDIR_FPMKUNIT),) +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX)),) +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX) +else +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX) +else +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX) +else +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +endif +ifdef CHECKDEPEND +$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE): + $(MAKE) -C $(PACKAGEDIR_FPMKUNIT) $(FPCMADE) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE) +endif +else +PACKAGEDIR_FPMKUNIT= +UNITDIR_FPMKUNIT:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FPMKUNIT),) +UNITDIR_FPMKUNIT:=$(firstword $(UNITDIR_FPMKUNIT)) +else +UNITDIR_FPMKUNIT= +endif +endif +ifdef UNITDIR_FPMKUNIT +override COMPILER_UNITDIR+=$(UNITDIR_FPMKUNIT) +endif +ifdef UNITDIR_FPMAKE_FPMKUNIT +override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_FPMKUNIT) +endif +endif ifndef NOCPUDEF override FPCOPTDEF=$(ARCH) endif @@ -1940,12 +1544,16 @@ endif ifndef CROSSBOOTSTRAP ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-XP$(BINUTILSPREFIX) -override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) endif ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-Xr$(RLINKPATH) endif endif +ifndef CROSSCOMPILE +ifneq ($(BINUTILSPREFIX),) +override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) +endif +endif ifdef UNITDIR override FPCOPT+=$(addprefix -Fu,$(UNITDIR)) endif @@ -2045,12 +1653,6 @@ endif endif ifdef LINKSHARED endif -ifdef GCCLIBDIR -override FPCOPT+=-Fl$(GCCLIBDIR) -endif -ifdef OTHERLIBDIR -override FPCOPT+=$(addprefix -Fl,$(OTHERLIBDIR)) -endif ifdef OPT override FPCOPT+=$(OPT) endif @@ -2085,113 +1687,10 @@ EXECPPAS:=@$(PPAS) endif endif endif -.PHONY: fpc_units -ifneq ($(TARGET_UNITS)$(TARGET_IMPLICITUNITS),) -override ALLTARGET+=fpc_units -override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS)) -override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS)) -override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -endif -fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES) ifdef TARGET_RSTS override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS)) override CLEANRSTFILES+=$(RSTFILES) endif -.PHONY: fpc_examples -ifneq ($(TARGET_EXAMPLES),) -HASEXAMPLES=1 -override EXAMPLESOURCEFILES:=$(wildcard $(addsuffix .pp,$(TARGET_EXAMPLES)) $(addsuffix .pas,$(TARGET_EXAMPLES)) $(addsuffix .lpr,$(TARGET_EXAMPLES)) $(addsuffix .dpr,$(TARGET_EXAMPLES))) -override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(TARGET_EXAMPLES)) -override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(TARGET_EXAMPLES)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES))) -override EXAMPLEDBGFILES:=$(addsuffix $(EXEDBGEXT),$(TARGET_EXAMPLES)) -override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES) -override CLEANEXEDBGFILES+=$(EXAMPLEDBGFILES) -ifeq ($(OS_TARGET),os2) -override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES)) -endif -ifeq ($(OS_TARGET),emx) -override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES)) -endif -endif -ifneq ($(TARGET_EXAMPLEDIRS),) -HASEXAMPLES=1 -endif -fpc_examples: all $(EXAMPLEFILES) $(addsuffix _all,$(TARGET_EXAMPLEDIRS)) -.PHONY: fpc_all fpc_smart fpc_debug fpc_release fpc_shared -$(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET) - @$(ECHOREDIR) Compiled > $(FPCMADE) -fpc_all: $(FPCMADE) -fpc_smart: - $(MAKE) all LINKSMART=1 CREATESMART=1 -fpc_debug: - $(MAKE) all DEBUG=1 -fpc_release: - $(MAKE) all RELEASE=1 -.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res -$(COMPILER_UNITTARGETDIR): - $(MKDIRTREE) $(COMPILER_UNITTARGETDIR) -$(COMPILER_TARGETDIR): - $(MKDIRTREE) $(COMPILER_TARGETDIR) -%$(PPUEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(PPUEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.lpr - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.dpr - $(COMPILER) $< - $(EXECPPAS) -%.res: %.rc - windres -i $< -o $@ -vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.inc $(COMPILER_INCLUDEDIR) -vpath %$(OEXT) $(COMPILER_UNITTARGETDIR) -vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR) -.PHONY: fpc_shared -override INSTALLTARGET+=fpc_shared_install -ifndef SHARED_LIBVERSION -SHARED_LIBVERSION=$(FPC_VERSION) -endif -ifndef SHARED_LIBNAME -SHARED_LIBNAME=$(PACKAGE_NAME) -endif -ifndef SHARED_FULLNAME -SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSION)$(SHAREDLIBEXT) -endif -ifndef SHARED_LIBUNITS -SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS) -override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_LIBUNITS)) -endif -fpc_shared: -ifdef HASSHAREDLIB - $(MAKE) all CREATESHARED=1 LINKSHARED=1 CREATESMART=1 -ifneq ($(SHARED_BUILD),n) - $(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR) -endif -else - @$(ECHO) Shared Libraries not supported -endif -fpc_shared_install: -ifneq ($(SHARED_BUILD),n) -ifneq ($(SHARED_LIBUNITS),) -ifneq ($(wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),) - $(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INSTALL_SHAREDDIR) -endif -endif -endif .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall ifdef INSTALL_UNITS override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS)) @@ -2215,9 +1714,6 @@ endif fpc_install: all $(INSTALLTARGET) ifdef INSTALLEXEFILES $(MKDIR) $(INSTALL_BINDIR) -ifdef UPXPROG - -$(UPXPROG) $(INSTALLEXEFILES) -endif $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR) endif ifdef INSTALL_CREATEPACKAGEFPC @@ -2476,7 +1972,6 @@ fpc_baseinfo: @$(ECHO) Date...... $(DATE) @$(ECHO) FPCMake... $(FPCMAKE) @$(ECHO) PPUMove... $(PPUMOVE) - @$(ECHO) Upx....... $(UPXPROG) @$(ECHO) Zip....... $(ZIPPROG) @$(ECHO) @$(ECHO) == Object info == @@ -2533,262 +2028,59 @@ endif fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS)) fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2 fpc_makefiles: fpc_makefile fpc_makefile_dirs -ifeq ($(FULL_TARGET),i386-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-go32v2) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-win32) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-os2) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-beos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-haiku) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-qnx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netware) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-openbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-wdosx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-emx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-watcom) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-wince) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-symbian) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-nativent) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-amiga) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-atari) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-palmos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-macos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-wii) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-win64) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-palmos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-wince) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-gba) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-nds) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-symbian) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),avr-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),armeb-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),armeb-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),mipsel-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifdef TARGET_EXAMPLEDIRS_EXAMPLES -examples_all: - $(MAKE) -C examples all -examples_debug: - $(MAKE) -C examples debug -examples_smart: - $(MAKE) -C examples smart -examples_release: - $(MAKE) -C examples release -examples_units: - $(MAKE) -C examples units -examples_examples: - $(MAKE) -C examples examples -examples_shared: - $(MAKE) -C examples shared -examples_install: - $(MAKE) -C examples install -examples_sourceinstall: - $(MAKE) -C examples sourceinstall -examples_exampleinstall: - $(MAKE) -C examples exampleinstall -examples_distinstall: - $(MAKE) -C examples distinstall -examples_zipinstall: - $(MAKE) -C examples zipinstall -examples_zipsourceinstall: - $(MAKE) -C examples zipsourceinstall -examples_zipexampleinstall: - $(MAKE) -C examples zipexampleinstall -examples_zipdistinstall: - $(MAKE) -C examples zipdistinstall -examples_clean: - $(MAKE) -C examples clean -examples_distclean: - $(MAKE) -C examples distclean -examples_cleanall: - $(MAKE) -C examples cleanall -examples_info: - $(MAKE) -C examples info -examples_makefiles: - $(MAKE) -C examples makefiles +units: examples: - $(MAKE) -C examples all -.PHONY: examples_all examples_debug examples_smart examples_release examples_units examples_examples examples_shared examples_install examples_sourceinstall examples_exampleinstall examples_distinstall examples_zipinstall examples_zipsourceinstall examples_zipexampleinstall examples_zipdistinstall examples_clean examples_distclean examples_cleanall examples_info examples_makefiles examples -endif -all: fpc_all -debug: fpc_debug -smart: fpc_smart -release: fpc_release -units: fpc_units -examples: fpc_examples -shared: fpc_shared -install: fpc_install +shared: sourceinstall: fpc_sourceinstall exampleinstall: fpc_exampleinstall -distinstall: fpc_distinstall zipinstall: fpc_zipinstall zipsourceinstall: fpc_zipsourceinstall zipexampleinstall: fpc_zipexampleinstall zipdistinstall: fpc_zipdistinstall -clean: fpc_clean $(addsuffix _clean,$(TARGET_EXAMPLEDIRS)) -distclean: fpc_distclean -cleanall: fpc_cleanall +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: units examples shared sourceinstall exampleinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info makefiles ifneq ($(wildcard fpcmake.loc),) include fpcmake.loc endif .NOTPARALLEL: +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif diff --git a/packages/odbc/Makefile.fpc b/packages/odbc/Makefile.fpc index b8d0fec515..7c404b1e57 100644 --- a/packages/odbc/Makefile.fpc +++ b/packages/odbc/Makefile.fpc @@ -1,16 +1,13 @@ # -# Makefile.fpc for odbc bindings +# Makefile.fpc for running fpmake # + [package] name=odbc version=2.7.1 -[target] -units=odbcsql odbcsqldyn -exampledirs=examples - [require] -libc=n +packages=rtl fpmkunit [install] fpcpackage=y @@ -18,13 +15,62 @@ fpcpackage=y [default] fpcdir=../.. -[compiler] -includedir=src -sourcedir=src - -[shared] -build=n +[prerules] +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) +endif +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) +endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) [rules] .NOTPARALLEL: +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +# If no fpmake exists and (dist)clean is called, do not try to build fpmake, it will +# most often fail because the dependencies are cleared. +# In case of a clean, simply do nothing +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +# In case of a distclean, perform an 'old'-style distclean. This to avoid problems +# when the package is compiled using fpcmake prior to running this clean using fpmake +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +# distinstall also installs the example-sources +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif + diff --git a/packages/odbc/Makefile.fpc.fpcmake b/packages/odbc/Makefile.fpc.fpcmake new file mode 100644 index 0000000000..b8d0fec515 --- /dev/null +++ b/packages/odbc/Makefile.fpc.fpcmake @@ -0,0 +1,30 @@ +# +# Makefile.fpc for odbc bindings +# +[package] +name=odbc +version=2.7.1 + +[target] +units=odbcsql odbcsqldyn +exampledirs=examples + +[require] +libc=n + +[install] +fpcpackage=y + +[default] +fpcdir=../.. + +[compiler] +includedir=src +sourcedir=src + +[shared] +build=n + +[rules] +.NOTPARALLEL: + diff --git a/packages/oggvorbis/Makefile b/packages/oggvorbis/Makefile index f522252e79..9a6bee7a60 100644 --- a/packages/oggvorbis/Makefile +++ b/packages/oggvorbis/Makefile @@ -1,5 +1,5 @@ # -# Don't edit, this file is generated by FPCMake Version 2.0.0 [2011/12/04] +# Don't edit, this file is generated by FPCMake Version 2.0.0 [2012/01/09] # 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 @@ -294,574 +294,15 @@ endif endif override PACKAGE_NAME=oggvorbis override PACKAGE_VERSION=2.7.1 -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_UNITS+=ogg vorbis +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_UNITS+=ogg vorbis -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_UNITS+=ogg vorbis +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) override INSTALL_FPCPACKAGE=y -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_INCLUDEDIR+=src -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 -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),sparc-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_SOURCEDIR+=src tests -endif ifdef REQUIRE_UNITSDIR override UNITSDIR+=$(REQUIRE_UNITSDIR) endif @@ -1446,25 +887,6 @@ DATESTR:=$(shell $(DATE) +%Y%m%d) else DATESTR= endif -ifndef UPXPROG -ifeq ($(OS_TARGET),go32v2) -UPXPROG:=1 -endif -ifeq ($(OS_TARGET),win32) -UPXPROG:= -endif -ifdef UPXPROG -UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH)))) -ifeq ($(UPXPROG),) -UPXPROG= -else -UPXPROG:=$(firstword $(UPXPROG)) -endif -else -UPXPROG= -endif -endif -export UPXPROG ZIPOPT=-9 ZIPEXT=.zip ifeq ($(USETAR),bz2) @@ -1474,195 +896,447 @@ else TAROPT=vz TAREXT=.tar.gz endif -override REQUIRE_PACKAGES=rtl +override REQUIRE_PACKAGES=rtl fpmkunit ifeq ($(FULL_TARGET),i386-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-go32v2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-win32) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-os2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-beos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-haiku) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-qnx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netware) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wdosx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-emx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-watcom) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netwlibc) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-nativent) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-iphonesim) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-atari) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-macos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-morphos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-wii) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-win64) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-gba) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-nds) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),avr-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),mipsel-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifdef REQUIRE_PACKAGES_RTL PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))) @@ -1702,6 +1376,158 @@ 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)))))) +ifneq ($(PACKAGEDIR_HASH),) +ifneq ($(wildcard $(PACKAGEDIR_HASH)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_HASH)/$(FPCMADE) +endif +else +PACKAGEDIR_HASH= +UNITDIR_HASH:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /hash/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_HASH),) +UNITDIR_HASH:=$(firstword $(UNITDIR_HASH)) +else +UNITDIR_HASH= +endif +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)))))) +ifneq ($(PACKAGEDIR_PASZLIB),) +ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE) +endif +else +PACKAGEDIR_PASZLIB= +UNITDIR_PASZLIB:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_PASZLIB),) +UNITDIR_PASZLIB:=$(firstword $(UNITDIR_PASZLIB)) +else +UNITDIR_PASZLIB= +endif +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)))))) +ifneq ($(PACKAGEDIR_FCL-PROCESS),) +ifneq ($(wildcard $(PACKAGEDIR_FCL-PROCESS)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FCL-PROCESS)/$(FPCMADE) +endif +else +PACKAGEDIR_FCL-PROCESS= +UNITDIR_FCL-PROCESS:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fcl-process/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FCL-PROCESS),) +UNITDIR_FCL-PROCESS:=$(firstword $(UNITDIR_FCL-PROCESS)) +else +UNITDIR_FCL-PROCESS= +endif +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 +ifdef REQUIRE_PACKAGES_FPMKUNIT +PACKAGEDIR_FPMKUNIT:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Makefile.fpc,$(PACKAGESDIR)))))) +ifneq ($(PACKAGEDIR_FPMKUNIT),) +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX)),) +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX) +else +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX) +else +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX) +else +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +endif +ifdef CHECKDEPEND +$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE): + $(MAKE) -C $(PACKAGEDIR_FPMKUNIT) $(FPCMADE) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE) +endif +else +PACKAGEDIR_FPMKUNIT= +UNITDIR_FPMKUNIT:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FPMKUNIT),) +UNITDIR_FPMKUNIT:=$(firstword $(UNITDIR_FPMKUNIT)) +else +UNITDIR_FPMKUNIT= +endif +endif +ifdef UNITDIR_FPMKUNIT +override COMPILER_UNITDIR+=$(UNITDIR_FPMKUNIT) +endif +ifdef UNITDIR_FPMAKE_FPMKUNIT +override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_FPMKUNIT) +endif +endif ifndef NOCPUDEF override FPCOPTDEF=$(ARCH) endif @@ -1718,12 +1544,16 @@ endif ifndef CROSSBOOTSTRAP ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-XP$(BINUTILSPREFIX) -override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) endif ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-Xr$(RLINKPATH) endif endif +ifndef CROSSCOMPILE +ifneq ($(BINUTILSPREFIX),) +override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) +endif +endif ifdef UNITDIR override FPCOPT+=$(addprefix -Fu,$(UNITDIR)) endif @@ -1857,93 +1687,10 @@ EXECPPAS:=@$(PPAS) endif endif endif -.PHONY: fpc_units -ifneq ($(TARGET_UNITS)$(TARGET_IMPLICITUNITS),) -override ALLTARGET+=fpc_units -override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS)) -override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS)) -override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -endif -fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES) ifdef TARGET_RSTS override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS)) override CLEANRSTFILES+=$(RSTFILES) endif -.PHONY: fpc_all fpc_smart fpc_debug fpc_release fpc_shared -$(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET) - @$(ECHOREDIR) Compiled > $(FPCMADE) -fpc_all: $(FPCMADE) -fpc_smart: - $(MAKE) all LINKSMART=1 CREATESMART=1 -fpc_debug: - $(MAKE) all DEBUG=1 -fpc_release: - $(MAKE) all RELEASE=1 -.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res -$(COMPILER_UNITTARGETDIR): - $(MKDIRTREE) $(COMPILER_UNITTARGETDIR) -$(COMPILER_TARGETDIR): - $(MKDIRTREE) $(COMPILER_TARGETDIR) -%$(PPUEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(PPUEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.lpr - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.dpr - $(COMPILER) $< - $(EXECPPAS) -%.res: %.rc - windres -i $< -o $@ -vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.inc $(COMPILER_INCLUDEDIR) -vpath %$(OEXT) $(COMPILER_UNITTARGETDIR) -vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR) -.PHONY: fpc_shared -override INSTALLTARGET+=fpc_shared_install -ifndef SHARED_LIBVERSION -SHARED_LIBVERSION=$(FPC_VERSION) -endif -ifndef SHARED_LIBNAME -SHARED_LIBNAME=$(PACKAGE_NAME) -endif -ifndef SHARED_FULLNAME -SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSION)$(SHAREDLIBEXT) -endif -ifndef SHARED_LIBUNITS -SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS) -override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_LIBUNITS)) -endif -fpc_shared: -ifdef HASSHAREDLIB - $(MAKE) all CREATESHARED=1 LINKSHARED=1 CREATESMART=1 -ifneq ($(SHARED_BUILD),n) - $(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR) -endif -else - @$(ECHO) Shared Libraries not supported -endif -fpc_shared_install: -ifneq ($(SHARED_BUILD),n) -ifneq ($(SHARED_LIBUNITS),) -ifneq ($(wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),) - $(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INSTALL_SHAREDDIR) -endif -endif -endif .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall ifdef INSTALL_UNITS override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS)) @@ -1967,9 +1714,6 @@ endif fpc_install: all $(INSTALLTARGET) ifdef INSTALLEXEFILES $(MKDIR) $(INSTALL_BINDIR) -ifdef UPXPROG - -$(UPXPROG) $(INSTALLEXEFILES) -endif $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR) endif ifdef INSTALL_CREATEPACKAGEFPC @@ -2228,7 +1972,6 @@ fpc_baseinfo: @$(ECHO) Date...... $(DATE) @$(ECHO) FPCMake... $(FPCMAKE) @$(ECHO) PPUMove... $(PPUMOVE) - @$(ECHO) Upx....... $(UPXPROG) @$(ECHO) Zip....... $(ZIPPROG) @$(ECHO) @$(ECHO) == Object info == @@ -2285,28 +2028,59 @@ endif fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS)) fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2 fpc_makefiles: fpc_makefile fpc_makefile_dirs -all: fpc_all -debug: fpc_debug -smart: fpc_smart -release: fpc_release -units: fpc_units +units: examples: -shared: fpc_shared -install: fpc_install +shared: sourceinstall: fpc_sourceinstall exampleinstall: fpc_exampleinstall -distinstall: fpc_distinstall zipinstall: fpc_zipinstall zipsourceinstall: fpc_zipsourceinstall zipexampleinstall: fpc_zipexampleinstall zipdistinstall: fpc_zipdistinstall -clean: fpc_clean -distclean: fpc_distclean -cleanall: fpc_cleanall +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: units examples shared sourceinstall exampleinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info makefiles ifneq ($(wildcard fpcmake.loc),) include fpcmake.loc endif .NOTPARALLEL: +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif diff --git a/packages/oggvorbis/Makefile.fpc b/packages/oggvorbis/Makefile.fpc index cf3616a046..4ab667f7ef 100644 --- a/packages/oggvorbis/Makefile.fpc +++ b/packages/oggvorbis/Makefile.fpc @@ -1,15 +1,13 @@ # -# Makefile.fpc for oggvorbis bindings +# Makefile.fpc for running fpmake # [package] name=oggvorbis version=2.7.1 -[target] -units=ogg vorbis - [require] +packages=rtl fpmkunit [install] fpcpackage=y @@ -17,9 +15,62 @@ fpcpackage=y [default] fpcdir=../.. -[compiler] -includedir=src -sourcedir=src tests +[prerules] +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) +endif +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) +endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) [rules] .NOTPARALLEL: + +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +# If no fpmake exists and (dist)clean is called, do not try to build fpmake, it will +# most often fail because the dependencies are cleared. +# In case of a clean, simply do nothing +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +# In case of a distclean, perform an 'old'-style distclean. This to avoid problems +# when the package is compiled using fpcmake prior to running this clean using fpmake +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +# distinstall also installs the example-sources +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif + diff --git a/packages/oggvorbis/Makefile.fpc.fpcmake b/packages/oggvorbis/Makefile.fpc.fpcmake new file mode 100644 index 0000000000..cf3616a046 --- /dev/null +++ b/packages/oggvorbis/Makefile.fpc.fpcmake @@ -0,0 +1,25 @@ +# +# Makefile.fpc for oggvorbis bindings +# + +[package] +name=oggvorbis +version=2.7.1 + +[target] +units=ogg vorbis + +[require] + +[install] +fpcpackage=y + +[default] +fpcdir=../.. + +[compiler] +includedir=src +sourcedir=src tests + +[rules] +.NOTPARALLEL: diff --git a/packages/openal/Makefile b/packages/openal/Makefile index c5fb216e95..7aaceb8d59 100644 --- a/packages/openal/Makefile +++ b/packages/openal/Makefile @@ -1,5 +1,5 @@ # -# Don't edit, this file is generated by FPCMake Version 2.0.0 [2011/12/04] +# Don't edit, this file is generated by FPCMake Version 2.0.0 [2012/01/09] # 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 @@ -294,763 +294,15 @@ endif endif override PACKAGE_NAME=openal override PACKAGE_VERSION=2.7.1 -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_UNITS+=openal -endif -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_EXAMPLEDIRS+=examples +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_EXAMPLEDIRS+=examples +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) override INSTALL_FPCPACKAGE=y -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_INCLUDEDIR+=src -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 -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),sparc-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif ifdef REQUIRE_UNITSDIR override UNITSDIR+=$(REQUIRE_UNITSDIR) endif @@ -1635,25 +887,6 @@ DATESTR:=$(shell $(DATE) +%Y%m%d) else DATESTR= endif -ifndef UPXPROG -ifeq ($(OS_TARGET),go32v2) -UPXPROG:=1 -endif -ifeq ($(OS_TARGET),win32) -UPXPROG:= -endif -ifdef UPXPROG -UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH)))) -ifeq ($(UPXPROG),) -UPXPROG= -else -UPXPROG:=$(firstword $(UPXPROG)) -endif -else -UPXPROG= -endif -endif -export UPXPROG ZIPOPT=-9 ZIPEXT=.zip ifeq ($(USETAR),bz2) @@ -1663,195 +896,447 @@ else TAROPT=vz TAREXT=.tar.gz endif -override REQUIRE_PACKAGES=rtl +override REQUIRE_PACKAGES=rtl fpmkunit ifeq ($(FULL_TARGET),i386-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-go32v2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-win32) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-os2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-beos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-haiku) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-qnx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netware) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wdosx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-emx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-watcom) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netwlibc) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-nativent) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-iphonesim) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-atari) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-macos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-morphos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-wii) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-win64) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-gba) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-nds) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),avr-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),mipsel-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifdef REQUIRE_PACKAGES_RTL PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))) @@ -1891,6 +1376,158 @@ 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)))))) +ifneq ($(PACKAGEDIR_HASH),) +ifneq ($(wildcard $(PACKAGEDIR_HASH)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_HASH)/$(FPCMADE) +endif +else +PACKAGEDIR_HASH= +UNITDIR_HASH:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /hash/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_HASH),) +UNITDIR_HASH:=$(firstword $(UNITDIR_HASH)) +else +UNITDIR_HASH= +endif +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)))))) +ifneq ($(PACKAGEDIR_PASZLIB),) +ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE) +endif +else +PACKAGEDIR_PASZLIB= +UNITDIR_PASZLIB:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_PASZLIB),) +UNITDIR_PASZLIB:=$(firstword $(UNITDIR_PASZLIB)) +else +UNITDIR_PASZLIB= +endif +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)))))) +ifneq ($(PACKAGEDIR_FCL-PROCESS),) +ifneq ($(wildcard $(PACKAGEDIR_FCL-PROCESS)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FCL-PROCESS)/$(FPCMADE) +endif +else +PACKAGEDIR_FCL-PROCESS= +UNITDIR_FCL-PROCESS:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fcl-process/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FCL-PROCESS),) +UNITDIR_FCL-PROCESS:=$(firstword $(UNITDIR_FCL-PROCESS)) +else +UNITDIR_FCL-PROCESS= +endif +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 +ifdef REQUIRE_PACKAGES_FPMKUNIT +PACKAGEDIR_FPMKUNIT:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Makefile.fpc,$(PACKAGESDIR)))))) +ifneq ($(PACKAGEDIR_FPMKUNIT),) +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX)),) +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX) +else +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX) +else +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX) +else +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +endif +ifdef CHECKDEPEND +$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE): + $(MAKE) -C $(PACKAGEDIR_FPMKUNIT) $(FPCMADE) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE) +endif +else +PACKAGEDIR_FPMKUNIT= +UNITDIR_FPMKUNIT:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FPMKUNIT),) +UNITDIR_FPMKUNIT:=$(firstword $(UNITDIR_FPMKUNIT)) +else +UNITDIR_FPMKUNIT= +endif +endif +ifdef UNITDIR_FPMKUNIT +override COMPILER_UNITDIR+=$(UNITDIR_FPMKUNIT) +endif +ifdef UNITDIR_FPMAKE_FPMKUNIT +override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_FPMKUNIT) +endif +endif ifndef NOCPUDEF override FPCOPTDEF=$(ARCH) endif @@ -1907,12 +1544,16 @@ endif ifndef CROSSBOOTSTRAP ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-XP$(BINUTILSPREFIX) -override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) endif ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-Xr$(RLINKPATH) endif endif +ifndef CROSSCOMPILE +ifneq ($(BINUTILSPREFIX),) +override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) +endif +endif ifdef UNITDIR override FPCOPT+=$(addprefix -Fu,$(UNITDIR)) endif @@ -2046,113 +1687,10 @@ EXECPPAS:=@$(PPAS) endif endif endif -.PHONY: fpc_units -ifneq ($(TARGET_UNITS)$(TARGET_IMPLICITUNITS),) -override ALLTARGET+=fpc_units -override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS)) -override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS)) -override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -endif -fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES) ifdef TARGET_RSTS override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS)) override CLEANRSTFILES+=$(RSTFILES) endif -.PHONY: fpc_examples -ifneq ($(TARGET_EXAMPLES),) -HASEXAMPLES=1 -override EXAMPLESOURCEFILES:=$(wildcard $(addsuffix .pp,$(TARGET_EXAMPLES)) $(addsuffix .pas,$(TARGET_EXAMPLES)) $(addsuffix .lpr,$(TARGET_EXAMPLES)) $(addsuffix .dpr,$(TARGET_EXAMPLES))) -override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(TARGET_EXAMPLES)) -override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(TARGET_EXAMPLES)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES))) -override EXAMPLEDBGFILES:=$(addsuffix $(EXEDBGEXT),$(TARGET_EXAMPLES)) -override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES) -override CLEANEXEDBGFILES+=$(EXAMPLEDBGFILES) -ifeq ($(OS_TARGET),os2) -override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES)) -endif -ifeq ($(OS_TARGET),emx) -override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES)) -endif -endif -ifneq ($(TARGET_EXAMPLEDIRS),) -HASEXAMPLES=1 -endif -fpc_examples: all $(EXAMPLEFILES) $(addsuffix _all,$(TARGET_EXAMPLEDIRS)) -.PHONY: fpc_all fpc_smart fpc_debug fpc_release fpc_shared -$(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET) - @$(ECHOREDIR) Compiled > $(FPCMADE) -fpc_all: $(FPCMADE) -fpc_smart: - $(MAKE) all LINKSMART=1 CREATESMART=1 -fpc_debug: - $(MAKE) all DEBUG=1 -fpc_release: - $(MAKE) all RELEASE=1 -.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res -$(COMPILER_UNITTARGETDIR): - $(MKDIRTREE) $(COMPILER_UNITTARGETDIR) -$(COMPILER_TARGETDIR): - $(MKDIRTREE) $(COMPILER_TARGETDIR) -%$(PPUEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(PPUEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.lpr - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.dpr - $(COMPILER) $< - $(EXECPPAS) -%.res: %.rc - windres -i $< -o $@ -vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.inc $(COMPILER_INCLUDEDIR) -vpath %$(OEXT) $(COMPILER_UNITTARGETDIR) -vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR) -.PHONY: fpc_shared -override INSTALLTARGET+=fpc_shared_install -ifndef SHARED_LIBVERSION -SHARED_LIBVERSION=$(FPC_VERSION) -endif -ifndef SHARED_LIBNAME -SHARED_LIBNAME=$(PACKAGE_NAME) -endif -ifndef SHARED_FULLNAME -SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSION)$(SHAREDLIBEXT) -endif -ifndef SHARED_LIBUNITS -SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS) -override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_LIBUNITS)) -endif -fpc_shared: -ifdef HASSHAREDLIB - $(MAKE) all CREATESHARED=1 LINKSHARED=1 CREATESMART=1 -ifneq ($(SHARED_BUILD),n) - $(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR) -endif -else - @$(ECHO) Shared Libraries not supported -endif -fpc_shared_install: -ifneq ($(SHARED_BUILD),n) -ifneq ($(SHARED_LIBUNITS),) -ifneq ($(wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),) - $(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INSTALL_SHAREDDIR) -endif -endif -endif .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall ifdef INSTALL_UNITS override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS)) @@ -2176,9 +1714,6 @@ endif fpc_install: all $(INSTALLTARGET) ifdef INSTALLEXEFILES $(MKDIR) $(INSTALL_BINDIR) -ifdef UPXPROG - -$(UPXPROG) $(INSTALLEXEFILES) -endif $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR) endif ifdef INSTALL_CREATEPACKAGEFPC @@ -2437,7 +1972,6 @@ fpc_baseinfo: @$(ECHO) Date...... $(DATE) @$(ECHO) FPCMake... $(FPCMAKE) @$(ECHO) PPUMove... $(PPUMOVE) - @$(ECHO) Upx....... $(UPXPROG) @$(ECHO) Zip....... $(ZIPPROG) @$(ECHO) @$(ECHO) == Object info == @@ -2494,262 +2028,59 @@ endif fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS)) fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2 fpc_makefiles: fpc_makefile fpc_makefile_dirs -ifeq ($(FULL_TARGET),i386-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-go32v2) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-win32) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-os2) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-beos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-haiku) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-qnx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netware) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-openbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-wdosx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-emx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-watcom) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-wince) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-symbian) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-nativent) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-amiga) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-atari) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-palmos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-macos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-wii) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-win64) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-palmos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-wince) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-gba) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-nds) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-symbian) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),avr-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),armeb-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),armeb-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),mipsel-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifdef TARGET_EXAMPLEDIRS_EXAMPLES -examples_all: - $(MAKE) -C examples all -examples_debug: - $(MAKE) -C examples debug -examples_smart: - $(MAKE) -C examples smart -examples_release: - $(MAKE) -C examples release -examples_units: - $(MAKE) -C examples units -examples_examples: - $(MAKE) -C examples examples -examples_shared: - $(MAKE) -C examples shared -examples_install: - $(MAKE) -C examples install -examples_sourceinstall: - $(MAKE) -C examples sourceinstall -examples_exampleinstall: - $(MAKE) -C examples exampleinstall -examples_distinstall: - $(MAKE) -C examples distinstall -examples_zipinstall: - $(MAKE) -C examples zipinstall -examples_zipsourceinstall: - $(MAKE) -C examples zipsourceinstall -examples_zipexampleinstall: - $(MAKE) -C examples zipexampleinstall -examples_zipdistinstall: - $(MAKE) -C examples zipdistinstall -examples_clean: - $(MAKE) -C examples clean -examples_distclean: - $(MAKE) -C examples distclean -examples_cleanall: - $(MAKE) -C examples cleanall -examples_info: - $(MAKE) -C examples info -examples_makefiles: - $(MAKE) -C examples makefiles +units: examples: - $(MAKE) -C examples all -.PHONY: examples_all examples_debug examples_smart examples_release examples_units examples_examples examples_shared examples_install examples_sourceinstall examples_exampleinstall examples_distinstall examples_zipinstall examples_zipsourceinstall examples_zipexampleinstall examples_zipdistinstall examples_clean examples_distclean examples_cleanall examples_info examples_makefiles examples -endif -all: fpc_all -debug: fpc_debug -smart: fpc_smart -release: fpc_release -units: fpc_units -examples: fpc_examples -shared: fpc_shared -install: fpc_install +shared: sourceinstall: fpc_sourceinstall exampleinstall: fpc_exampleinstall -distinstall: fpc_distinstall zipinstall: fpc_zipinstall zipsourceinstall: fpc_zipsourceinstall zipexampleinstall: fpc_zipexampleinstall zipdistinstall: fpc_zipdistinstall -clean: fpc_clean $(addsuffix _clean,$(TARGET_EXAMPLEDIRS)) -distclean: fpc_distclean -cleanall: fpc_cleanall +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: units examples shared sourceinstall exampleinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info makefiles ifneq ($(wildcard fpcmake.loc),) include fpcmake.loc endif .NOTPARALLEL: +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif diff --git a/packages/openal/Makefile.fpc b/packages/openal/Makefile.fpc index a74bbf911d..0c5edd8ee5 100644 --- a/packages/openal/Makefile.fpc +++ b/packages/openal/Makefile.fpc @@ -1,26 +1,76 @@ # -# Makefile.fpc for OpenAL bindings +# Makefile.fpc for running fpmake # [package] name=openal version=2.7.1 -[target] -units=openal -exampledirs=examples - [require] +packages=rtl fpmkunit [install] fpcpackage=y -[compiler] -includedir=src -sourcedir=src tests examples - [default] fpcdir=../.. +[prerules] +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) +endif +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) +endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) + [rules] .NOTPARALLEL: + +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +# If no fpmake exists and (dist)clean is called, do not try to build fpmake, it will +# most often fail because the dependencies are cleared. +# In case of a clean, simply do nothing +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +# In case of a distclean, perform an 'old'-style distclean. This to avoid problems +# when the package is compiled using fpcmake prior to running this clean using fpmake +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +# distinstall also installs the example-sources +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif + diff --git a/packages/openal/Makefile.fpc.fpcmake b/packages/openal/Makefile.fpc.fpcmake new file mode 100644 index 0000000000..a74bbf911d --- /dev/null +++ b/packages/openal/Makefile.fpc.fpcmake @@ -0,0 +1,26 @@ +# +# Makefile.fpc for OpenAL bindings +# + +[package] +name=openal +version=2.7.1 + +[target] +units=openal +exampledirs=examples + +[require] + +[install] +fpcpackage=y + +[compiler] +includedir=src +sourcedir=src tests examples + +[default] +fpcdir=../.. + +[rules] +.NOTPARALLEL: diff --git a/packages/opencl/Makefile b/packages/opencl/Makefile index b2e332c5eb..a90431d1b5 100644 --- a/packages/opencl/Makefile +++ b/packages/opencl/Makefile @@ -1,5 +1,5 @@ # -# Don't edit, this file is generated by FPCMake Version 2.0.0 [2011/12/04] +# Don't edit, this file is generated by FPCMake Version 2.0.0 [2012/01/09] # 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 @@ -294,577 +294,15 @@ endif endif override PACKAGE_NAME=opencl override PACKAGE_VERSION=2.7.1 -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_UNITS+=cl cl_gl +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_UNITS+=cl cl_gl -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_UNITS+=cl cl_gl +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) override INSTALL_FPCPACKAGE=y -override INSTALL_FPCSUBDIR=packages -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_INCLUDEDIR+=src -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 -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_SOURCEDIR+=src -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 -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_SOURCEDIR+=src -endif -override SHARED_BUILD=n -override SHARED_BUILD=n ifdef REQUIRE_UNITSDIR override UNITSDIR+=$(REQUIRE_UNITSDIR) endif @@ -1061,37 +499,6 @@ endif else CROSSBINDIR= endif -ifeq ($(OS_SOURCE),linux) -ifndef GCCLIBDIR -ifeq ($(CPU_TARGET),i386) -ifneq ($(findstring x86_64,$(shell uname -a)),) -ifeq ($(BINUTILSPREFIX),) -GCCLIBDIR:=$(shell dirname `gcc -m32 -print-libgcc-file-name`) -endif -endif -endif -ifeq ($(CPU_TARGET),powerpc64) -ifeq ($(BINUTILSPREFIX),) -GCCLIBDIR:=$(shell dirname `gcc -m64 -print-libgcc-file-name`) -endif -endif -endif -ifndef GCCLIBDIR -CROSSGCC=$(strip $(wildcard $(addsuffix /$(BINUTILSPREFIX)gcc$(SRCEXEEXT),$(SEARCHPATH)))) -ifneq ($(CROSSGCC),) -GCCLIBDIR:=$(shell dirname `$(CROSSGCC) -print-libgcc-file-name`) -endif -endif -ifndef OTHERLIBDIR -OTHERLIBDIR:=$(shell grep -v "^\#" /etc/ld.so.conf | awk '{ ORS=" "; print $1 }') -endif -endif -ifdef inUnix -ifeq ($(OS_SOURCE),netbsd) -OTHERLIBDIR+=/usr/pkg/lib -endif -export GCCLIBDIR OTHERLIB -endif BATCHEXT=.bat LOADEREXT=.as EXEEXT=.exe @@ -1480,25 +887,6 @@ DATESTR:=$(shell $(DATE) +%Y%m%d) else DATESTR= endif -ifndef UPXPROG -ifeq ($(OS_TARGET),go32v2) -UPXPROG:=1 -endif -ifeq ($(OS_TARGET),win32) -UPXPROG:= -endif -ifdef UPXPROG -UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH)))) -ifeq ($(UPXPROG),) -UPXPROG= -else -UPXPROG:=$(firstword $(UPXPROG)) -endif -else -UPXPROG= -endif -endif -export UPXPROG ZIPOPT=-9 ZIPEXT=.zip ifeq ($(USETAR),bz2) @@ -1508,281 +896,447 @@ else TAROPT=vz TAREXT=.tar.gz endif -override REQUIRE_PACKAGES=rtl opengl +override REQUIRE_PACKAGES=rtl fpmkunit ifeq ($(FULL_TARGET),i386-linux) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-go32v2) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-win32) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-os2) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-freebsd) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-beos) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-haiku) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netbsd) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-solaris) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-qnx) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netware) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-openbsd) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wdosx) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-darwin) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-emx) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-watcom) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netwlibc) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wince) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-embedded) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-symbian) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-nativent) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-iphonesim) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-linux) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-freebsd) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-netbsd) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-amiga) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-atari) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-openbsd) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-palmos) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-embedded) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-linux) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-netbsd) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-amiga) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-macos) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-darwin) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-morphos) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-embedded) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-wii) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-linux) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-netbsd) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-solaris) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-embedded) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-linux) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-freebsd) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-solaris) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-darwin) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-win64) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-embedded) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-linux) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-palmos) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-darwin) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-wince) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-gba) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-nds) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-embedded) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-symbian) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-linux) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-darwin) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-embedded) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),avr-embedded) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-linux) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-embedded) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),mipsel-linux) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 -REQUIRE_PACKAGES_OPENGL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifdef REQUIRE_PACKAGES_RTL PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))) @@ -1822,80 +1376,156 @@ ifdef UNITDIR_FPMAKE_RTL override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_RTL) endif endif -ifdef REQUIRE_PACKAGES_X11 -PACKAGEDIR_X11:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /x11/Makefile.fpc,$(PACKAGESDIR)))))) -ifneq ($(PACKAGEDIR_X11),) -ifneq ($(wildcard $(PACKAGEDIR_X11)/units/$(TARGETSUFFIX)),) -UNITDIR_X11=$(PACKAGEDIR_X11)/units/$(TARGETSUFFIX) +ifdef REQUIRE_PACKAGES_HASH +PACKAGEDIR_HASH:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /hash/Makefile.fpc,$(PACKAGESDIR)))))) +ifneq ($(PACKAGEDIR_HASH),) +ifneq ($(wildcard $(PACKAGEDIR_HASH)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_HASH)/$(FPCMADE) +endif +else +PACKAGEDIR_HASH= +UNITDIR_HASH:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /hash/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_HASH),) +UNITDIR_HASH:=$(firstword $(UNITDIR_HASH)) +else +UNITDIR_HASH= +endif +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)))))) +ifneq ($(PACKAGEDIR_PASZLIB),) +ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE) +endif +else +PACKAGEDIR_PASZLIB= +UNITDIR_PASZLIB:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_PASZLIB),) +UNITDIR_PASZLIB:=$(firstword $(UNITDIR_PASZLIB)) +else +UNITDIR_PASZLIB= +endif +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)))))) +ifneq ($(PACKAGEDIR_FCL-PROCESS),) +ifneq ($(wildcard $(PACKAGEDIR_FCL-PROCESS)/units/$(TARGETSUFFIX)),) +UNITDIR_FCL-PROCESS=$(PACKAGEDIR_FCL-PROCESS)/units/$(TARGETSUFFIX) else -UNITDIR_X11=$(PACKAGEDIR_X11) +UNITDIR_FCL-PROCESS=$(PACKAGEDIR_FCL-PROCESS) endif -ifneq ($(wildcard $(PACKAGEDIR_X11)/units/$(SOURCESUFFIX)),) -UNITDIR_FPMAKE_X11=$(PACKAGEDIR_X11)/units/$(SOURCESUFFIX) +ifneq ($(wildcard $(PACKAGEDIR_FCL-PROCESS)/units/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FCL-PROCESS=$(PACKAGEDIR_FCL-PROCESS)/units/$(SOURCESUFFIX) else -ifneq ($(wildcard $(PACKAGEDIR_X11)/units_bs/$(SOURCESUFFIX)),) -UNITDIR_FPMAKE_X11=$(PACKAGEDIR_X11)/units_bs/$(SOURCESUFFIX) +ifneq ($(wildcard $(PACKAGEDIR_FCL-PROCESS)/units_bs/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FCL-PROCESS=$(PACKAGEDIR_FCL-PROCESS)/units_bs/$(SOURCESUFFIX) else -UNITDIR_FPMAKE_X11=$(PACKAGEDIR_X11) +UNITDIR_FPMAKE_FCL-PROCESS=$(PACKAGEDIR_FCL-PROCESS) endif endif ifdef CHECKDEPEND -$(PACKAGEDIR_X11)/$(FPCMADE): - $(MAKE) -C $(PACKAGEDIR_X11) $(FPCMADE) -override ALLDEPENDENCIES+=$(PACKAGEDIR_X11)/$(FPCMADE) +$(PACKAGEDIR_FCL-PROCESS)/$(FPCMADE): + $(MAKE) -C $(PACKAGEDIR_FCL-PROCESS) $(FPCMADE) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FCL-PROCESS)/$(FPCMADE) endif else -PACKAGEDIR_X11= -UNITDIR_X11:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /x11/Package.fpc,$(UNITSDIR))))) -ifneq ($(UNITDIR_X11),) -UNITDIR_X11:=$(firstword $(UNITDIR_X11)) +PACKAGEDIR_FCL-PROCESS= +UNITDIR_FCL-PROCESS:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fcl-process/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FCL-PROCESS),) +UNITDIR_FCL-PROCESS:=$(firstword $(UNITDIR_FCL-PROCESS)) else -UNITDIR_X11= +UNITDIR_FCL-PROCESS= endif endif -ifdef UNITDIR_X11 -override COMPILER_UNITDIR+=$(UNITDIR_X11) +ifdef UNITDIR_FCL-PROCESS +override COMPILER_UNITDIR+=$(UNITDIR_FCL-PROCESS) endif -ifdef UNITDIR_FPMAKE_X11 -override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_X11) +ifdef UNITDIR_FPMAKE_FCL-PROCESS +override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_FCL-PROCESS) endif endif -ifdef REQUIRE_PACKAGES_OPENGL -PACKAGEDIR_OPENGL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /opengl/Makefile.fpc,$(PACKAGESDIR)))))) -ifneq ($(PACKAGEDIR_OPENGL),) -ifneq ($(wildcard $(PACKAGEDIR_OPENGL)/units/$(TARGETSUFFIX)),) -UNITDIR_OPENGL=$(PACKAGEDIR_OPENGL)/units/$(TARGETSUFFIX) +ifdef REQUIRE_PACKAGES_FPMKUNIT +PACKAGEDIR_FPMKUNIT:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Makefile.fpc,$(PACKAGESDIR)))))) +ifneq ($(PACKAGEDIR_FPMKUNIT),) +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX)),) +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX) else -UNITDIR_OPENGL=$(PACKAGEDIR_OPENGL) +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) endif -ifneq ($(wildcard $(PACKAGEDIR_OPENGL)/units/$(SOURCESUFFIX)),) -UNITDIR_FPMAKE_OPENGL=$(PACKAGEDIR_OPENGL)/units/$(SOURCESUFFIX) +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX) else -ifneq ($(wildcard $(PACKAGEDIR_OPENGL)/units_bs/$(SOURCESUFFIX)),) -UNITDIR_FPMAKE_OPENGL=$(PACKAGEDIR_OPENGL)/units_bs/$(SOURCESUFFIX) +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX) else -UNITDIR_FPMAKE_OPENGL=$(PACKAGEDIR_OPENGL) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) endif endif ifdef CHECKDEPEND -$(PACKAGEDIR_OPENGL)/$(FPCMADE): - $(MAKE) -C $(PACKAGEDIR_OPENGL) $(FPCMADE) -override ALLDEPENDENCIES+=$(PACKAGEDIR_OPENGL)/$(FPCMADE) +$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE): + $(MAKE) -C $(PACKAGEDIR_FPMKUNIT) $(FPCMADE) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE) endif else -PACKAGEDIR_OPENGL= -UNITDIR_OPENGL:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /opengl/Package.fpc,$(UNITSDIR))))) -ifneq ($(UNITDIR_OPENGL),) -UNITDIR_OPENGL:=$(firstword $(UNITDIR_OPENGL)) +PACKAGEDIR_FPMKUNIT= +UNITDIR_FPMKUNIT:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FPMKUNIT),) +UNITDIR_FPMKUNIT:=$(firstword $(UNITDIR_FPMKUNIT)) else -UNITDIR_OPENGL= +UNITDIR_FPMKUNIT= endif endif -ifdef UNITDIR_OPENGL -override COMPILER_UNITDIR+=$(UNITDIR_OPENGL) +ifdef UNITDIR_FPMKUNIT +override COMPILER_UNITDIR+=$(UNITDIR_FPMKUNIT) endif -ifdef UNITDIR_FPMAKE_OPENGL -override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_OPENGL) +ifdef UNITDIR_FPMAKE_FPMKUNIT +override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_FPMKUNIT) endif endif ifndef NOCPUDEF @@ -1914,12 +1544,16 @@ endif ifndef CROSSBOOTSTRAP ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-XP$(BINUTILSPREFIX) -override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) endif ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-Xr$(RLINKPATH) endif endif +ifndef CROSSCOMPILE +ifneq ($(BINUTILSPREFIX),) +override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) +endif +endif ifdef UNITDIR override FPCOPT+=$(addprefix -Fu,$(UNITDIR)) endif @@ -2019,12 +1653,6 @@ endif endif ifdef LINKSHARED endif -ifdef GCCLIBDIR -override FPCOPT+=-Fl$(GCCLIBDIR) -endif -ifdef OTHERLIBDIR -override FPCOPT+=$(addprefix -Fl,$(OTHERLIBDIR)) -endif ifdef OPT override FPCOPT+=$(OPT) endif @@ -2059,93 +1687,10 @@ EXECPPAS:=@$(PPAS) endif endif endif -.PHONY: fpc_units -ifneq ($(TARGET_UNITS)$(TARGET_IMPLICITUNITS),) -override ALLTARGET+=fpc_units -override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS)) -override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS)) -override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -endif -fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES) ifdef TARGET_RSTS override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS)) override CLEANRSTFILES+=$(RSTFILES) endif -.PHONY: fpc_all fpc_smart fpc_debug fpc_release fpc_shared -$(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET) - @$(ECHOREDIR) Compiled > $(FPCMADE) -fpc_all: $(FPCMADE) -fpc_smart: - $(MAKE) all LINKSMART=1 CREATESMART=1 -fpc_debug: - $(MAKE) all DEBUG=1 -fpc_release: - $(MAKE) all RELEASE=1 -.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res -$(COMPILER_UNITTARGETDIR): - $(MKDIRTREE) $(COMPILER_UNITTARGETDIR) -$(COMPILER_TARGETDIR): - $(MKDIRTREE) $(COMPILER_TARGETDIR) -%$(PPUEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(PPUEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.lpr - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.dpr - $(COMPILER) $< - $(EXECPPAS) -%.res: %.rc - windres -i $< -o $@ -vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.inc $(COMPILER_INCLUDEDIR) -vpath %$(OEXT) $(COMPILER_UNITTARGETDIR) -vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR) -.PHONY: fpc_shared -override INSTALLTARGET+=fpc_shared_install -ifndef SHARED_LIBVERSION -SHARED_LIBVERSION=$(FPC_VERSION) -endif -ifndef SHARED_LIBNAME -SHARED_LIBNAME=$(PACKAGE_NAME) -endif -ifndef SHARED_FULLNAME -SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSION)$(SHAREDLIBEXT) -endif -ifndef SHARED_LIBUNITS -SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS) -override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_LIBUNITS)) -endif -fpc_shared: -ifdef HASSHAREDLIB - $(MAKE) all CREATESHARED=1 LINKSHARED=1 CREATESMART=1 -ifneq ($(SHARED_BUILD),n) - $(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR) -endif -else - @$(ECHO) Shared Libraries not supported -endif -fpc_shared_install: -ifneq ($(SHARED_BUILD),n) -ifneq ($(SHARED_LIBUNITS),) -ifneq ($(wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),) - $(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INSTALL_SHAREDDIR) -endif -endif -endif .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall ifdef INSTALL_UNITS override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS)) @@ -2169,9 +1714,6 @@ endif fpc_install: all $(INSTALLTARGET) ifdef INSTALLEXEFILES $(MKDIR) $(INSTALL_BINDIR) -ifdef UPXPROG - -$(UPXPROG) $(INSTALLEXEFILES) -endif $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR) endif ifdef INSTALL_CREATEPACKAGEFPC @@ -2430,7 +1972,6 @@ fpc_baseinfo: @$(ECHO) Date...... $(DATE) @$(ECHO) FPCMake... $(FPCMAKE) @$(ECHO) PPUMove... $(PPUMOVE) - @$(ECHO) Upx....... $(UPXPROG) @$(ECHO) Zip....... $(ZIPPROG) @$(ECHO) @$(ECHO) == Object info == @@ -2487,28 +2028,59 @@ endif fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS)) fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2 fpc_makefiles: fpc_makefile fpc_makefile_dirs -all: fpc_all -debug: fpc_debug -smart: fpc_smart -release: fpc_release -units: fpc_units +units: examples: -shared: fpc_shared -install: fpc_install +shared: sourceinstall: fpc_sourceinstall exampleinstall: fpc_exampleinstall -distinstall: fpc_distinstall zipinstall: fpc_zipinstall zipsourceinstall: fpc_zipsourceinstall zipexampleinstall: fpc_zipexampleinstall zipdistinstall: fpc_zipdistinstall -clean: fpc_clean -distclean: fpc_distclean -cleanall: fpc_cleanall +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: units examples shared sourceinstall exampleinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info makefiles ifneq ($(wildcard fpcmake.loc),) include fpcmake.loc endif .NOTPARALLEL: +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif diff --git a/packages/opencl/Makefile.fpc b/packages/opencl/Makefile.fpc index 07df44c67d..9e914b0a67 100644 --- a/packages/opencl/Makefile.fpc +++ b/packages/opencl/Makefile.fpc @@ -1,31 +1,76 @@ # -# Makefile.fpc for Free Pascal opencl Packages +# Makefile.fpc for running fpmake # [package] name=opencl version=2.7.1 -[target] -units=cl cl_gl - [require] -libc=y -packages=opengl - -[compiler] -includedir=src -sourcedir=src +packages=rtl fpmkunit [install] fpcpackage=y -fpcsubdir=packages [default] fpcdir=../.. -[shared] -build=n +[prerules] +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) +endif +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) +endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) [rules] .NOTPARALLEL: + +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +# If no fpmake exists and (dist)clean is called, do not try to build fpmake, it will +# most often fail because the dependencies are cleared. +# In case of a clean, simply do nothing +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +# In case of a distclean, perform an 'old'-style distclean. This to avoid problems +# when the package is compiled using fpcmake prior to running this clean using fpmake +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +# distinstall also installs the example-sources +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif + diff --git a/packages/opencl/Makefile.fpc.fpcmake b/packages/opencl/Makefile.fpc.fpcmake new file mode 100644 index 0000000000..07df44c67d --- /dev/null +++ b/packages/opencl/Makefile.fpc.fpcmake @@ -0,0 +1,31 @@ +# +# Makefile.fpc for Free Pascal opencl Packages +# + +[package] +name=opencl +version=2.7.1 + +[target] +units=cl cl_gl + +[require] +libc=y +packages=opengl + +[compiler] +includedir=src +sourcedir=src + +[install] +fpcpackage=y +fpcsubdir=packages + +[default] +fpcdir=../.. + +[shared] +build=n + +[rules] +.NOTPARALLEL: diff --git a/packages/oracle/Makefile b/packages/oracle/Makefile index c615772b45..a7f00e7336 100644 --- a/packages/oracle/Makefile +++ b/packages/oracle/Makefile @@ -1,5 +1,5 @@ # -# Don't edit, this file is generated by FPCMake Version 2.0.0 [2011/12/04] +# Don't edit, this file is generated by FPCMake Version 2.0.0 [2012/01/09] # 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 @@ -294,765 +294,15 @@ endif endif override PACKAGE_NAME=oracle override PACKAGE_VERSION=2.7.1 -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_UNITS+=oci ocidyn oratypes oraoci -endif -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_EXAMPLEDIRS+=examples +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_EXAMPLEDIRS+=examples +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) override INSTALL_FPCPACKAGE=y -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_INCLUDEDIR+=src -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 -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),sparc-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_SOURCEDIR+=src tests -endif -override SHARED_BUILD=n -override SHARED_BUILD=n ifdef REQUIRE_UNITSDIR override UNITSDIR+=$(REQUIRE_UNITSDIR) endif @@ -1249,37 +499,6 @@ endif else CROSSBINDIR= endif -ifeq ($(OS_SOURCE),linux) -ifndef GCCLIBDIR -ifeq ($(CPU_TARGET),i386) -ifneq ($(findstring x86_64,$(shell uname -a)),) -ifeq ($(BINUTILSPREFIX),) -GCCLIBDIR:=$(shell dirname `gcc -m32 -print-libgcc-file-name`) -endif -endif -endif -ifeq ($(CPU_TARGET),powerpc64) -ifeq ($(BINUTILSPREFIX),) -GCCLIBDIR:=$(shell dirname `gcc -m64 -print-libgcc-file-name`) -endif -endif -endif -ifndef GCCLIBDIR -CROSSGCC=$(strip $(wildcard $(addsuffix /$(BINUTILSPREFIX)gcc$(SRCEXEEXT),$(SEARCHPATH)))) -ifneq ($(CROSSGCC),) -GCCLIBDIR:=$(shell dirname `$(CROSSGCC) -print-libgcc-file-name`) -endif -endif -ifndef OTHERLIBDIR -OTHERLIBDIR:=$(shell grep -v "^\#" /etc/ld.so.conf | awk '{ ORS=" "; print $1 }') -endif -endif -ifdef inUnix -ifeq ($(OS_SOURCE),netbsd) -OTHERLIBDIR+=/usr/pkg/lib -endif -export GCCLIBDIR OTHERLIB -endif BATCHEXT=.bat LOADEREXT=.as EXEEXT=.exe @@ -1668,25 +887,6 @@ DATESTR:=$(shell $(DATE) +%Y%m%d) else DATESTR= endif -ifndef UPXPROG -ifeq ($(OS_TARGET),go32v2) -UPXPROG:=1 -endif -ifeq ($(OS_TARGET),win32) -UPXPROG:= -endif -ifdef UPXPROG -UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH)))) -ifeq ($(UPXPROG),) -UPXPROG= -else -UPXPROG:=$(firstword $(UPXPROG)) -endif -else -UPXPROG= -endif -endif -export UPXPROG ZIPOPT=-9 ZIPEXT=.zip ifeq ($(USETAR),bz2) @@ -1696,195 +896,447 @@ else TAROPT=vz TAREXT=.tar.gz endif -override REQUIRE_PACKAGES=rtl +override REQUIRE_PACKAGES=rtl fpmkunit ifeq ($(FULL_TARGET),i386-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-go32v2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-win32) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-os2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-beos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-haiku) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-qnx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netware) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wdosx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-emx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-watcom) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netwlibc) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-nativent) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-iphonesim) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-atari) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-macos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-morphos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-wii) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-win64) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-gba) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-nds) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),avr-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),mipsel-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifdef REQUIRE_PACKAGES_RTL PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))) @@ -1924,6 +1376,158 @@ 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)))))) +ifneq ($(PACKAGEDIR_HASH),) +ifneq ($(wildcard $(PACKAGEDIR_HASH)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_HASH)/$(FPCMADE) +endif +else +PACKAGEDIR_HASH= +UNITDIR_HASH:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /hash/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_HASH),) +UNITDIR_HASH:=$(firstword $(UNITDIR_HASH)) +else +UNITDIR_HASH= +endif +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)))))) +ifneq ($(PACKAGEDIR_PASZLIB),) +ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE) +endif +else +PACKAGEDIR_PASZLIB= +UNITDIR_PASZLIB:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_PASZLIB),) +UNITDIR_PASZLIB:=$(firstword $(UNITDIR_PASZLIB)) +else +UNITDIR_PASZLIB= +endif +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)))))) +ifneq ($(PACKAGEDIR_FCL-PROCESS),) +ifneq ($(wildcard $(PACKAGEDIR_FCL-PROCESS)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FCL-PROCESS)/$(FPCMADE) +endif +else +PACKAGEDIR_FCL-PROCESS= +UNITDIR_FCL-PROCESS:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fcl-process/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FCL-PROCESS),) +UNITDIR_FCL-PROCESS:=$(firstword $(UNITDIR_FCL-PROCESS)) +else +UNITDIR_FCL-PROCESS= +endif +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 +ifdef REQUIRE_PACKAGES_FPMKUNIT +PACKAGEDIR_FPMKUNIT:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Makefile.fpc,$(PACKAGESDIR)))))) +ifneq ($(PACKAGEDIR_FPMKUNIT),) +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX)),) +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX) +else +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX) +else +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX) +else +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +endif +ifdef CHECKDEPEND +$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE): + $(MAKE) -C $(PACKAGEDIR_FPMKUNIT) $(FPCMADE) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE) +endif +else +PACKAGEDIR_FPMKUNIT= +UNITDIR_FPMKUNIT:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FPMKUNIT),) +UNITDIR_FPMKUNIT:=$(firstword $(UNITDIR_FPMKUNIT)) +else +UNITDIR_FPMKUNIT= +endif +endif +ifdef UNITDIR_FPMKUNIT +override COMPILER_UNITDIR+=$(UNITDIR_FPMKUNIT) +endif +ifdef UNITDIR_FPMAKE_FPMKUNIT +override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_FPMKUNIT) +endif +endif ifndef NOCPUDEF override FPCOPTDEF=$(ARCH) endif @@ -1940,12 +1544,16 @@ endif ifndef CROSSBOOTSTRAP ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-XP$(BINUTILSPREFIX) -override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) endif ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-Xr$(RLINKPATH) endif endif +ifndef CROSSCOMPILE +ifneq ($(BINUTILSPREFIX),) +override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) +endif +endif ifdef UNITDIR override FPCOPT+=$(addprefix -Fu,$(UNITDIR)) endif @@ -2045,12 +1653,6 @@ endif endif ifdef LINKSHARED endif -ifdef GCCLIBDIR -override FPCOPT+=-Fl$(GCCLIBDIR) -endif -ifdef OTHERLIBDIR -override FPCOPT+=$(addprefix -Fl,$(OTHERLIBDIR)) -endif ifdef OPT override FPCOPT+=$(OPT) endif @@ -2085,113 +1687,10 @@ EXECPPAS:=@$(PPAS) endif endif endif -.PHONY: fpc_units -ifneq ($(TARGET_UNITS)$(TARGET_IMPLICITUNITS),) -override ALLTARGET+=fpc_units -override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS)) -override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS)) -override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -endif -fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES) ifdef TARGET_RSTS override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS)) override CLEANRSTFILES+=$(RSTFILES) endif -.PHONY: fpc_examples -ifneq ($(TARGET_EXAMPLES),) -HASEXAMPLES=1 -override EXAMPLESOURCEFILES:=$(wildcard $(addsuffix .pp,$(TARGET_EXAMPLES)) $(addsuffix .pas,$(TARGET_EXAMPLES)) $(addsuffix .lpr,$(TARGET_EXAMPLES)) $(addsuffix .dpr,$(TARGET_EXAMPLES))) -override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(TARGET_EXAMPLES)) -override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(TARGET_EXAMPLES)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES))) -override EXAMPLEDBGFILES:=$(addsuffix $(EXEDBGEXT),$(TARGET_EXAMPLES)) -override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES) -override CLEANEXEDBGFILES+=$(EXAMPLEDBGFILES) -ifeq ($(OS_TARGET),os2) -override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES)) -endif -ifeq ($(OS_TARGET),emx) -override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES)) -endif -endif -ifneq ($(TARGET_EXAMPLEDIRS),) -HASEXAMPLES=1 -endif -fpc_examples: all $(EXAMPLEFILES) $(addsuffix _all,$(TARGET_EXAMPLEDIRS)) -.PHONY: fpc_all fpc_smart fpc_debug fpc_release fpc_shared -$(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET) - @$(ECHOREDIR) Compiled > $(FPCMADE) -fpc_all: $(FPCMADE) -fpc_smart: - $(MAKE) all LINKSMART=1 CREATESMART=1 -fpc_debug: - $(MAKE) all DEBUG=1 -fpc_release: - $(MAKE) all RELEASE=1 -.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res -$(COMPILER_UNITTARGETDIR): - $(MKDIRTREE) $(COMPILER_UNITTARGETDIR) -$(COMPILER_TARGETDIR): - $(MKDIRTREE) $(COMPILER_TARGETDIR) -%$(PPUEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(PPUEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.lpr - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.dpr - $(COMPILER) $< - $(EXECPPAS) -%.res: %.rc - windres -i $< -o $@ -vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.inc $(COMPILER_INCLUDEDIR) -vpath %$(OEXT) $(COMPILER_UNITTARGETDIR) -vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR) -.PHONY: fpc_shared -override INSTALLTARGET+=fpc_shared_install -ifndef SHARED_LIBVERSION -SHARED_LIBVERSION=$(FPC_VERSION) -endif -ifndef SHARED_LIBNAME -SHARED_LIBNAME=$(PACKAGE_NAME) -endif -ifndef SHARED_FULLNAME -SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSION)$(SHAREDLIBEXT) -endif -ifndef SHARED_LIBUNITS -SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS) -override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_LIBUNITS)) -endif -fpc_shared: -ifdef HASSHAREDLIB - $(MAKE) all CREATESHARED=1 LINKSHARED=1 CREATESMART=1 -ifneq ($(SHARED_BUILD),n) - $(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR) -endif -else - @$(ECHO) Shared Libraries not supported -endif -fpc_shared_install: -ifneq ($(SHARED_BUILD),n) -ifneq ($(SHARED_LIBUNITS),) -ifneq ($(wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),) - $(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INSTALL_SHAREDDIR) -endif -endif -endif .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall ifdef INSTALL_UNITS override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS)) @@ -2215,9 +1714,6 @@ endif fpc_install: all $(INSTALLTARGET) ifdef INSTALLEXEFILES $(MKDIR) $(INSTALL_BINDIR) -ifdef UPXPROG - -$(UPXPROG) $(INSTALLEXEFILES) -endif $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR) endif ifdef INSTALL_CREATEPACKAGEFPC @@ -2476,7 +1972,6 @@ fpc_baseinfo: @$(ECHO) Date...... $(DATE) @$(ECHO) FPCMake... $(FPCMAKE) @$(ECHO) PPUMove... $(PPUMOVE) - @$(ECHO) Upx....... $(UPXPROG) @$(ECHO) Zip....... $(ZIPPROG) @$(ECHO) @$(ECHO) == Object info == @@ -2533,262 +2028,59 @@ endif fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS)) fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2 fpc_makefiles: fpc_makefile fpc_makefile_dirs -ifeq ($(FULL_TARGET),i386-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-go32v2) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-win32) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-os2) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-beos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-haiku) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-qnx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netware) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-openbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-wdosx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-emx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-watcom) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-wince) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-symbian) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-nativent) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-amiga) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-atari) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-palmos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-macos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-wii) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-win64) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-palmos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-wince) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-gba) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-nds) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-symbian) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),avr-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),armeb-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),armeb-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),mipsel-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifdef TARGET_EXAMPLEDIRS_EXAMPLES -examples_all: - $(MAKE) -C examples all -examples_debug: - $(MAKE) -C examples debug -examples_smart: - $(MAKE) -C examples smart -examples_release: - $(MAKE) -C examples release -examples_units: - $(MAKE) -C examples units -examples_examples: - $(MAKE) -C examples examples -examples_shared: - $(MAKE) -C examples shared -examples_install: - $(MAKE) -C examples install -examples_sourceinstall: - $(MAKE) -C examples sourceinstall -examples_exampleinstall: - $(MAKE) -C examples exampleinstall -examples_distinstall: - $(MAKE) -C examples distinstall -examples_zipinstall: - $(MAKE) -C examples zipinstall -examples_zipsourceinstall: - $(MAKE) -C examples zipsourceinstall -examples_zipexampleinstall: - $(MAKE) -C examples zipexampleinstall -examples_zipdistinstall: - $(MAKE) -C examples zipdistinstall -examples_clean: - $(MAKE) -C examples clean -examples_distclean: - $(MAKE) -C examples distclean -examples_cleanall: - $(MAKE) -C examples cleanall -examples_info: - $(MAKE) -C examples info -examples_makefiles: - $(MAKE) -C examples makefiles +units: examples: - $(MAKE) -C examples all -.PHONY: examples_all examples_debug examples_smart examples_release examples_units examples_examples examples_shared examples_install examples_sourceinstall examples_exampleinstall examples_distinstall examples_zipinstall examples_zipsourceinstall examples_zipexampleinstall examples_zipdistinstall examples_clean examples_distclean examples_cleanall examples_info examples_makefiles examples -endif -all: fpc_all -debug: fpc_debug -smart: fpc_smart -release: fpc_release -units: fpc_units -examples: fpc_examples -shared: fpc_shared -install: fpc_install +shared: sourceinstall: fpc_sourceinstall exampleinstall: fpc_exampleinstall -distinstall: fpc_distinstall zipinstall: fpc_zipinstall zipsourceinstall: fpc_zipsourceinstall zipexampleinstall: fpc_zipexampleinstall zipdistinstall: fpc_zipdistinstall -clean: fpc_clean $(addsuffix _clean,$(TARGET_EXAMPLEDIRS)) -distclean: fpc_distclean -cleanall: fpc_cleanall +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: units examples shared sourceinstall exampleinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info makefiles ifneq ($(wildcard fpcmake.loc),) include fpcmake.loc endif .NOTPARALLEL: +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif diff --git a/packages/oracle/Makefile.fpc b/packages/oracle/Makefile.fpc index a99a301995..ad753445b0 100644 --- a/packages/oracle/Makefile.fpc +++ b/packages/oracle/Makefile.fpc @@ -1,17 +1,13 @@ # -# Makefile.fpc for oracle units +# Makefile.fpc for running fpmake # [package] name=oracle version=2.7.1 -[target] -units=oci ocidyn oratypes oraoci -exampledirs=examples - [require] -libc=y +packages=rtl fpmkunit [install] fpcpackage=y @@ -19,18 +15,62 @@ fpcpackage=y [default] fpcdir=../.. -[compiler] -includedir=src -sourcedir=src tests - -# in libdir variable must be path to libraries -# libclntsh.*,libnlsrtl3.* -#[compiler] -#libdir=/usr/local/oracle8cli/lib - -[shared] -build=n +[prerules] +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) +endif +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) +endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) [rules] .NOTPARALLEL: +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +# If no fpmake exists and (dist)clean is called, do not try to build fpmake, it will +# most often fail because the dependencies are cleared. +# In case of a clean, simply do nothing +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +# In case of a distclean, perform an 'old'-style distclean. This to avoid problems +# when the package is compiled using fpcmake prior to running this clean using fpmake +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +# distinstall also installs the example-sources +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif + diff --git a/packages/oracle/Makefile.fpc.fpcmake b/packages/oracle/Makefile.fpc.fpcmake new file mode 100644 index 0000000000..a99a301995 --- /dev/null +++ b/packages/oracle/Makefile.fpc.fpcmake @@ -0,0 +1,36 @@ +# +# Makefile.fpc for oracle units +# + +[package] +name=oracle +version=2.7.1 + +[target] +units=oci ocidyn oratypes oraoci +exampledirs=examples + +[require] +libc=y + +[install] +fpcpackage=y + +[default] +fpcdir=../.. + +[compiler] +includedir=src +sourcedir=src tests + +# in libdir variable must be path to libraries +# libclntsh.*,libnlsrtl3.* +#[compiler] +#libdir=/usr/local/oracle8cli/lib + +[shared] +build=n + +[rules] +.NOTPARALLEL: + diff --git a/packages/postgres/Makefile b/packages/postgres/Makefile index 846f5d307c..2e20166fb2 100644 --- a/packages/postgres/Makefile +++ b/packages/postgres/Makefile @@ -1,5 +1,5 @@ # -# Don't edit, this file is generated by FPCMake Version 2.0.0 [2011/12/04] +# Don't edit, this file is generated by FPCMake Version 2.0.0 [2012/01/09] # 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 @@ -294,765 +294,15 @@ endif endif override PACKAGE_NAME=postgres override PACKAGE_VERSION=2.7.1 -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_UNITS+=dllist dllistdyn postgres postgres3 postgres3dyn -endif -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_EXAMPLEDIRS+=examples +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_EXAMPLEDIRS+=examples +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) override INSTALL_FPCPACKAGE=y -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_INCLUDEDIR+=src -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 -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_SOURCEDIR+=src -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 -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_SOURCEDIR+=src -endif -override SHARED_BUILD=n -override SHARED_BUILD=n ifdef REQUIRE_UNITSDIR override UNITSDIR+=$(REQUIRE_UNITSDIR) endif @@ -1249,37 +499,6 @@ endif else CROSSBINDIR= endif -ifeq ($(OS_SOURCE),linux) -ifndef GCCLIBDIR -ifeq ($(CPU_TARGET),i386) -ifneq ($(findstring x86_64,$(shell uname -a)),) -ifeq ($(BINUTILSPREFIX),) -GCCLIBDIR:=$(shell dirname `gcc -m32 -print-libgcc-file-name`) -endif -endif -endif -ifeq ($(CPU_TARGET),powerpc64) -ifeq ($(BINUTILSPREFIX),) -GCCLIBDIR:=$(shell dirname `gcc -m64 -print-libgcc-file-name`) -endif -endif -endif -ifndef GCCLIBDIR -CROSSGCC=$(strip $(wildcard $(addsuffix /$(BINUTILSPREFIX)gcc$(SRCEXEEXT),$(SEARCHPATH)))) -ifneq ($(CROSSGCC),) -GCCLIBDIR:=$(shell dirname `$(CROSSGCC) -print-libgcc-file-name`) -endif -endif -ifndef OTHERLIBDIR -OTHERLIBDIR:=$(shell grep -v "^\#" /etc/ld.so.conf | awk '{ ORS=" "; print $1 }') -endif -endif -ifdef inUnix -ifeq ($(OS_SOURCE),netbsd) -OTHERLIBDIR+=/usr/pkg/lib -endif -export GCCLIBDIR OTHERLIB -endif BATCHEXT=.bat LOADEREXT=.as EXEEXT=.exe @@ -1668,25 +887,6 @@ DATESTR:=$(shell $(DATE) +%Y%m%d) else DATESTR= endif -ifndef UPXPROG -ifeq ($(OS_TARGET),go32v2) -UPXPROG:=1 -endif -ifeq ($(OS_TARGET),win32) -UPXPROG:= -endif -ifdef UPXPROG -UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH)))) -ifeq ($(UPXPROG),) -UPXPROG= -else -UPXPROG:=$(firstword $(UPXPROG)) -endif -else -UPXPROG= -endif -endif -export UPXPROG ZIPOPT=-9 ZIPEXT=.zip ifeq ($(USETAR),bz2) @@ -1696,195 +896,447 @@ else TAROPT=vz TAREXT=.tar.gz endif -override REQUIRE_PACKAGES=rtl +override REQUIRE_PACKAGES=rtl fpmkunit ifeq ($(FULL_TARGET),i386-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-go32v2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-win32) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-os2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-beos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-haiku) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-qnx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netware) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wdosx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-emx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-watcom) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netwlibc) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-nativent) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-iphonesim) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-atari) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-macos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-morphos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-wii) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-win64) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-gba) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-nds) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),avr-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),mipsel-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifdef REQUIRE_PACKAGES_RTL PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))) @@ -1924,6 +1376,158 @@ 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)))))) +ifneq ($(PACKAGEDIR_HASH),) +ifneq ($(wildcard $(PACKAGEDIR_HASH)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_HASH)/$(FPCMADE) +endif +else +PACKAGEDIR_HASH= +UNITDIR_HASH:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /hash/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_HASH),) +UNITDIR_HASH:=$(firstword $(UNITDIR_HASH)) +else +UNITDIR_HASH= +endif +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)))))) +ifneq ($(PACKAGEDIR_PASZLIB),) +ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE) +endif +else +PACKAGEDIR_PASZLIB= +UNITDIR_PASZLIB:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_PASZLIB),) +UNITDIR_PASZLIB:=$(firstword $(UNITDIR_PASZLIB)) +else +UNITDIR_PASZLIB= +endif +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)))))) +ifneq ($(PACKAGEDIR_FCL-PROCESS),) +ifneq ($(wildcard $(PACKAGEDIR_FCL-PROCESS)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FCL-PROCESS)/$(FPCMADE) +endif +else +PACKAGEDIR_FCL-PROCESS= +UNITDIR_FCL-PROCESS:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fcl-process/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FCL-PROCESS),) +UNITDIR_FCL-PROCESS:=$(firstword $(UNITDIR_FCL-PROCESS)) +else +UNITDIR_FCL-PROCESS= +endif +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 +ifdef REQUIRE_PACKAGES_FPMKUNIT +PACKAGEDIR_FPMKUNIT:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Makefile.fpc,$(PACKAGESDIR)))))) +ifneq ($(PACKAGEDIR_FPMKUNIT),) +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX)),) +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX) +else +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX) +else +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX) +else +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +endif +ifdef CHECKDEPEND +$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE): + $(MAKE) -C $(PACKAGEDIR_FPMKUNIT) $(FPCMADE) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE) +endif +else +PACKAGEDIR_FPMKUNIT= +UNITDIR_FPMKUNIT:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FPMKUNIT),) +UNITDIR_FPMKUNIT:=$(firstword $(UNITDIR_FPMKUNIT)) +else +UNITDIR_FPMKUNIT= +endif +endif +ifdef UNITDIR_FPMKUNIT +override COMPILER_UNITDIR+=$(UNITDIR_FPMKUNIT) +endif +ifdef UNITDIR_FPMAKE_FPMKUNIT +override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_FPMKUNIT) +endif +endif ifndef NOCPUDEF override FPCOPTDEF=$(ARCH) endif @@ -1940,12 +1544,16 @@ endif ifndef CROSSBOOTSTRAP ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-XP$(BINUTILSPREFIX) -override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) endif ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-Xr$(RLINKPATH) endif endif +ifndef CROSSCOMPILE +ifneq ($(BINUTILSPREFIX),) +override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) +endif +endif ifdef UNITDIR override FPCOPT+=$(addprefix -Fu,$(UNITDIR)) endif @@ -2045,12 +1653,6 @@ endif endif ifdef LINKSHARED endif -ifdef GCCLIBDIR -override FPCOPT+=-Fl$(GCCLIBDIR) -endif -ifdef OTHERLIBDIR -override FPCOPT+=$(addprefix -Fl,$(OTHERLIBDIR)) -endif ifdef OPT override FPCOPT+=$(OPT) endif @@ -2085,113 +1687,10 @@ EXECPPAS:=@$(PPAS) endif endif endif -.PHONY: fpc_units -ifneq ($(TARGET_UNITS)$(TARGET_IMPLICITUNITS),) -override ALLTARGET+=fpc_units -override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS)) -override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS)) -override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -endif -fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES) ifdef TARGET_RSTS override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS)) override CLEANRSTFILES+=$(RSTFILES) endif -.PHONY: fpc_examples -ifneq ($(TARGET_EXAMPLES),) -HASEXAMPLES=1 -override EXAMPLESOURCEFILES:=$(wildcard $(addsuffix .pp,$(TARGET_EXAMPLES)) $(addsuffix .pas,$(TARGET_EXAMPLES)) $(addsuffix .lpr,$(TARGET_EXAMPLES)) $(addsuffix .dpr,$(TARGET_EXAMPLES))) -override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(TARGET_EXAMPLES)) -override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(TARGET_EXAMPLES)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES))) -override EXAMPLEDBGFILES:=$(addsuffix $(EXEDBGEXT),$(TARGET_EXAMPLES)) -override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES) -override CLEANEXEDBGFILES+=$(EXAMPLEDBGFILES) -ifeq ($(OS_TARGET),os2) -override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES)) -endif -ifeq ($(OS_TARGET),emx) -override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES)) -endif -endif -ifneq ($(TARGET_EXAMPLEDIRS),) -HASEXAMPLES=1 -endif -fpc_examples: all $(EXAMPLEFILES) $(addsuffix _all,$(TARGET_EXAMPLEDIRS)) -.PHONY: fpc_all fpc_smart fpc_debug fpc_release fpc_shared -$(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET) - @$(ECHOREDIR) Compiled > $(FPCMADE) -fpc_all: $(FPCMADE) -fpc_smart: - $(MAKE) all LINKSMART=1 CREATESMART=1 -fpc_debug: - $(MAKE) all DEBUG=1 -fpc_release: - $(MAKE) all RELEASE=1 -.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res -$(COMPILER_UNITTARGETDIR): - $(MKDIRTREE) $(COMPILER_UNITTARGETDIR) -$(COMPILER_TARGETDIR): - $(MKDIRTREE) $(COMPILER_TARGETDIR) -%$(PPUEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(PPUEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.lpr - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.dpr - $(COMPILER) $< - $(EXECPPAS) -%.res: %.rc - windres -i $< -o $@ -vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.inc $(COMPILER_INCLUDEDIR) -vpath %$(OEXT) $(COMPILER_UNITTARGETDIR) -vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR) -.PHONY: fpc_shared -override INSTALLTARGET+=fpc_shared_install -ifndef SHARED_LIBVERSION -SHARED_LIBVERSION=$(FPC_VERSION) -endif -ifndef SHARED_LIBNAME -SHARED_LIBNAME=$(PACKAGE_NAME) -endif -ifndef SHARED_FULLNAME -SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSION)$(SHAREDLIBEXT) -endif -ifndef SHARED_LIBUNITS -SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS) -override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_LIBUNITS)) -endif -fpc_shared: -ifdef HASSHAREDLIB - $(MAKE) all CREATESHARED=1 LINKSHARED=1 CREATESMART=1 -ifneq ($(SHARED_BUILD),n) - $(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR) -endif -else - @$(ECHO) Shared Libraries not supported -endif -fpc_shared_install: -ifneq ($(SHARED_BUILD),n) -ifneq ($(SHARED_LIBUNITS),) -ifneq ($(wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),) - $(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INSTALL_SHAREDDIR) -endif -endif -endif .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall ifdef INSTALL_UNITS override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS)) @@ -2215,9 +1714,6 @@ endif fpc_install: all $(INSTALLTARGET) ifdef INSTALLEXEFILES $(MKDIR) $(INSTALL_BINDIR) -ifdef UPXPROG - -$(UPXPROG) $(INSTALLEXEFILES) -endif $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR) endif ifdef INSTALL_CREATEPACKAGEFPC @@ -2476,7 +1972,6 @@ fpc_baseinfo: @$(ECHO) Date...... $(DATE) @$(ECHO) FPCMake... $(FPCMAKE) @$(ECHO) PPUMove... $(PPUMOVE) - @$(ECHO) Upx....... $(UPXPROG) @$(ECHO) Zip....... $(ZIPPROG) @$(ECHO) @$(ECHO) == Object info == @@ -2533,262 +2028,59 @@ endif fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS)) fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2 fpc_makefiles: fpc_makefile fpc_makefile_dirs -ifeq ($(FULL_TARGET),i386-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-go32v2) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-win32) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-os2) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-beos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-haiku) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-qnx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netware) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-openbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-wdosx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-emx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-watcom) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-wince) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-symbian) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-nativent) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-amiga) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-atari) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-palmos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-macos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-wii) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-win64) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-palmos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-wince) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-gba) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-nds) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-symbian) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),avr-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),armeb-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),armeb-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),mipsel-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifdef TARGET_EXAMPLEDIRS_EXAMPLES -examples_all: - $(MAKE) -C examples all -examples_debug: - $(MAKE) -C examples debug -examples_smart: - $(MAKE) -C examples smart -examples_release: - $(MAKE) -C examples release -examples_units: - $(MAKE) -C examples units -examples_examples: - $(MAKE) -C examples examples -examples_shared: - $(MAKE) -C examples shared -examples_install: - $(MAKE) -C examples install -examples_sourceinstall: - $(MAKE) -C examples sourceinstall -examples_exampleinstall: - $(MAKE) -C examples exampleinstall -examples_distinstall: - $(MAKE) -C examples distinstall -examples_zipinstall: - $(MAKE) -C examples zipinstall -examples_zipsourceinstall: - $(MAKE) -C examples zipsourceinstall -examples_zipexampleinstall: - $(MAKE) -C examples zipexampleinstall -examples_zipdistinstall: - $(MAKE) -C examples zipdistinstall -examples_clean: - $(MAKE) -C examples clean -examples_distclean: - $(MAKE) -C examples distclean -examples_cleanall: - $(MAKE) -C examples cleanall -examples_info: - $(MAKE) -C examples info -examples_makefiles: - $(MAKE) -C examples makefiles +units: examples: - $(MAKE) -C examples all -.PHONY: examples_all examples_debug examples_smart examples_release examples_units examples_examples examples_shared examples_install examples_sourceinstall examples_exampleinstall examples_distinstall examples_zipinstall examples_zipsourceinstall examples_zipexampleinstall examples_zipdistinstall examples_clean examples_distclean examples_cleanall examples_info examples_makefiles examples -endif -all: fpc_all -debug: fpc_debug -smart: fpc_smart -release: fpc_release -units: fpc_units -examples: fpc_examples -shared: fpc_shared -install: fpc_install +shared: sourceinstall: fpc_sourceinstall exampleinstall: fpc_exampleinstall -distinstall: fpc_distinstall zipinstall: fpc_zipinstall zipsourceinstall: fpc_zipsourceinstall zipexampleinstall: fpc_zipexampleinstall zipdistinstall: fpc_zipdistinstall -clean: fpc_clean $(addsuffix _clean,$(TARGET_EXAMPLEDIRS)) -distclean: fpc_distclean -cleanall: fpc_cleanall +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: units examples shared sourceinstall exampleinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info makefiles ifneq ($(wildcard fpcmake.loc),) include fpcmake.loc endif .NOTPARALLEL: +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif diff --git a/packages/postgres/Makefile.fpc b/packages/postgres/Makefile.fpc index bdfedf83ca..a29f40c751 100644 --- a/packages/postgres/Makefile.fpc +++ b/packages/postgres/Makefile.fpc @@ -1,17 +1,13 @@ # -# Makefile.fpc for Postgres bindings +# Makefile.fpc for running fpmake # [package] name=postgres version=2.7.1 -[target] -units=dllist dllistdyn postgres postgres3 postgres3dyn -exampledirs=examples - [require] -libc=y +packages=rtl fpmkunit [install] fpcpackage=y @@ -19,13 +15,62 @@ fpcpackage=y [default] fpcdir=../.. -[compiler] -includedir=src -sourcedir=src - -[shared] -build=n +[prerules] +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) +endif +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) +endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) [rules] .NOTPARALLEL: +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +# If no fpmake exists and (dist)clean is called, do not try to build fpmake, it will +# most often fail because the dependencies are cleared. +# In case of a clean, simply do nothing +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +# In case of a distclean, perform an 'old'-style distclean. This to avoid problems +# when the package is compiled using fpcmake prior to running this clean using fpmake +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +# distinstall also installs the example-sources +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif + diff --git a/packages/postgres/Makefile.fpc.fpcmake b/packages/postgres/Makefile.fpc.fpcmake new file mode 100644 index 0000000000..bdfedf83ca --- /dev/null +++ b/packages/postgres/Makefile.fpc.fpcmake @@ -0,0 +1,31 @@ +# +# Makefile.fpc for Postgres bindings +# + +[package] +name=postgres +version=2.7.1 + +[target] +units=dllist dllistdyn postgres postgres3 postgres3dyn +exampledirs=examples + +[require] +libc=y + +[install] +fpcpackage=y + +[default] +fpcdir=../.. + +[compiler] +includedir=src +sourcedir=src + +[shared] +build=n + +[rules] +.NOTPARALLEL: + diff --git a/packages/proj4/Makefile b/packages/proj4/Makefile index 3e2c9adaf3..0400a10869 100644 --- a/packages/proj4/Makefile +++ b/packages/proj4/Makefile @@ -1,5 +1,5 @@ # -# Don't edit, this file is generated by FPCMake Version 2.0.0 [2011/12/04] +# Don't edit, this file is generated by FPCMake Version 2.0.0 [2012/01/09] # 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 @@ -294,574 +294,15 @@ endif endif override PACKAGE_NAME=proj4 override PACKAGE_VERSION=2.7.1 -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_UNITS+=proj +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_UNITS+=proj -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_UNITS+=proj +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) override INSTALL_FPCPACKAGE=y -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_INCLUDEDIR+=src -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 -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_SOURCEDIR+=src -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 -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_SOURCEDIR+=src -endif ifdef REQUIRE_UNITSDIR override UNITSDIR+=$(REQUIRE_UNITSDIR) endif @@ -1446,25 +887,6 @@ DATESTR:=$(shell $(DATE) +%Y%m%d) else DATESTR= endif -ifndef UPXPROG -ifeq ($(OS_TARGET),go32v2) -UPXPROG:=1 -endif -ifeq ($(OS_TARGET),win32) -UPXPROG:= -endif -ifdef UPXPROG -UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH)))) -ifeq ($(UPXPROG),) -UPXPROG= -else -UPXPROG:=$(firstword $(UPXPROG)) -endif -else -UPXPROG= -endif -endif -export UPXPROG ZIPOPT=-9 ZIPEXT=.zip ifeq ($(USETAR),bz2) @@ -1474,195 +896,447 @@ else TAROPT=vz TAREXT=.tar.gz endif -override REQUIRE_PACKAGES=rtl +override REQUIRE_PACKAGES=rtl fpmkunit ifeq ($(FULL_TARGET),i386-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-go32v2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-win32) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-os2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-beos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-haiku) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-qnx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netware) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wdosx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-emx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-watcom) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netwlibc) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-nativent) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-iphonesim) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-atari) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-macos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-morphos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-wii) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-win64) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-gba) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-nds) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),avr-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),mipsel-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifdef REQUIRE_PACKAGES_RTL PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))) @@ -1702,6 +1376,158 @@ 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)))))) +ifneq ($(PACKAGEDIR_HASH),) +ifneq ($(wildcard $(PACKAGEDIR_HASH)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_HASH)/$(FPCMADE) +endif +else +PACKAGEDIR_HASH= +UNITDIR_HASH:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /hash/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_HASH),) +UNITDIR_HASH:=$(firstword $(UNITDIR_HASH)) +else +UNITDIR_HASH= +endif +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)))))) +ifneq ($(PACKAGEDIR_PASZLIB),) +ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE) +endif +else +PACKAGEDIR_PASZLIB= +UNITDIR_PASZLIB:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_PASZLIB),) +UNITDIR_PASZLIB:=$(firstword $(UNITDIR_PASZLIB)) +else +UNITDIR_PASZLIB= +endif +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)))))) +ifneq ($(PACKAGEDIR_FCL-PROCESS),) +ifneq ($(wildcard $(PACKAGEDIR_FCL-PROCESS)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FCL-PROCESS)/$(FPCMADE) +endif +else +PACKAGEDIR_FCL-PROCESS= +UNITDIR_FCL-PROCESS:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fcl-process/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FCL-PROCESS),) +UNITDIR_FCL-PROCESS:=$(firstword $(UNITDIR_FCL-PROCESS)) +else +UNITDIR_FCL-PROCESS= +endif +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 +ifdef REQUIRE_PACKAGES_FPMKUNIT +PACKAGEDIR_FPMKUNIT:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Makefile.fpc,$(PACKAGESDIR)))))) +ifneq ($(PACKAGEDIR_FPMKUNIT),) +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX)),) +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX) +else +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX) +else +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX) +else +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +endif +ifdef CHECKDEPEND +$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE): + $(MAKE) -C $(PACKAGEDIR_FPMKUNIT) $(FPCMADE) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE) +endif +else +PACKAGEDIR_FPMKUNIT= +UNITDIR_FPMKUNIT:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FPMKUNIT),) +UNITDIR_FPMKUNIT:=$(firstword $(UNITDIR_FPMKUNIT)) +else +UNITDIR_FPMKUNIT= +endif +endif +ifdef UNITDIR_FPMKUNIT +override COMPILER_UNITDIR+=$(UNITDIR_FPMKUNIT) +endif +ifdef UNITDIR_FPMAKE_FPMKUNIT +override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_FPMKUNIT) +endif +endif ifndef NOCPUDEF override FPCOPTDEF=$(ARCH) endif @@ -1718,12 +1544,16 @@ endif ifndef CROSSBOOTSTRAP ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-XP$(BINUTILSPREFIX) -override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) endif ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-Xr$(RLINKPATH) endif endif +ifndef CROSSCOMPILE +ifneq ($(BINUTILSPREFIX),) +override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) +endif +endif ifdef UNITDIR override FPCOPT+=$(addprefix -Fu,$(UNITDIR)) endif @@ -1857,93 +1687,10 @@ EXECPPAS:=@$(PPAS) endif endif endif -.PHONY: fpc_units -ifneq ($(TARGET_UNITS)$(TARGET_IMPLICITUNITS),) -override ALLTARGET+=fpc_units -override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS)) -override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS)) -override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -endif -fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES) ifdef TARGET_RSTS override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS)) override CLEANRSTFILES+=$(RSTFILES) endif -.PHONY: fpc_all fpc_smart fpc_debug fpc_release fpc_shared -$(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET) - @$(ECHOREDIR) Compiled > $(FPCMADE) -fpc_all: $(FPCMADE) -fpc_smart: - $(MAKE) all LINKSMART=1 CREATESMART=1 -fpc_debug: - $(MAKE) all DEBUG=1 -fpc_release: - $(MAKE) all RELEASE=1 -.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res -$(COMPILER_UNITTARGETDIR): - $(MKDIRTREE) $(COMPILER_UNITTARGETDIR) -$(COMPILER_TARGETDIR): - $(MKDIRTREE) $(COMPILER_TARGETDIR) -%$(PPUEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(PPUEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.lpr - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.dpr - $(COMPILER) $< - $(EXECPPAS) -%.res: %.rc - windres -i $< -o $@ -vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.inc $(COMPILER_INCLUDEDIR) -vpath %$(OEXT) $(COMPILER_UNITTARGETDIR) -vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR) -.PHONY: fpc_shared -override INSTALLTARGET+=fpc_shared_install -ifndef SHARED_LIBVERSION -SHARED_LIBVERSION=$(FPC_VERSION) -endif -ifndef SHARED_LIBNAME -SHARED_LIBNAME=$(PACKAGE_NAME) -endif -ifndef SHARED_FULLNAME -SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSION)$(SHAREDLIBEXT) -endif -ifndef SHARED_LIBUNITS -SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS) -override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_LIBUNITS)) -endif -fpc_shared: -ifdef HASSHAREDLIB - $(MAKE) all CREATESHARED=1 LINKSHARED=1 CREATESMART=1 -ifneq ($(SHARED_BUILD),n) - $(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR) -endif -else - @$(ECHO) Shared Libraries not supported -endif -fpc_shared_install: -ifneq ($(SHARED_BUILD),n) -ifneq ($(SHARED_LIBUNITS),) -ifneq ($(wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),) - $(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INSTALL_SHAREDDIR) -endif -endif -endif .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall ifdef INSTALL_UNITS override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS)) @@ -1967,9 +1714,6 @@ endif fpc_install: all $(INSTALLTARGET) ifdef INSTALLEXEFILES $(MKDIR) $(INSTALL_BINDIR) -ifdef UPXPROG - -$(UPXPROG) $(INSTALLEXEFILES) -endif $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR) endif ifdef INSTALL_CREATEPACKAGEFPC @@ -2228,7 +1972,6 @@ fpc_baseinfo: @$(ECHO) Date...... $(DATE) @$(ECHO) FPCMake... $(FPCMAKE) @$(ECHO) PPUMove... $(PPUMOVE) - @$(ECHO) Upx....... $(UPXPROG) @$(ECHO) Zip....... $(ZIPPROG) @$(ECHO) @$(ECHO) == Object info == @@ -2285,28 +2028,59 @@ endif fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS)) fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2 fpc_makefiles: fpc_makefile fpc_makefile_dirs -all: fpc_all -debug: fpc_debug -smart: fpc_smart -release: fpc_release -units: fpc_units +units: examples: -shared: fpc_shared -install: fpc_install +shared: sourceinstall: fpc_sourceinstall exampleinstall: fpc_exampleinstall -distinstall: fpc_distinstall zipinstall: fpc_zipinstall zipsourceinstall: fpc_zipsourceinstall zipexampleinstall: fpc_zipexampleinstall zipdistinstall: fpc_zipdistinstall -clean: fpc_clean -distclean: fpc_distclean -cleanall: fpc_cleanall +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: units examples shared sourceinstall exampleinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info makefiles ifneq ($(wildcard fpcmake.loc),) include fpcmake.loc endif .NOTPARALLEL: +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif diff --git a/packages/proj4/Makefile.fpc b/packages/proj4/Makefile.fpc index aefe382750..df43e84277 100644 --- a/packages/proj4/Makefile.fpc +++ b/packages/proj4/Makefile.fpc @@ -1,15 +1,13 @@ # -# Makefile.fpc for proj.4 bindings +# Makefile.fpc for running fpmake # [package] name=proj4 version=2.7.1 -[target] -units=proj - [require] +packages=rtl fpmkunit [install] fpcpackage=y @@ -17,9 +15,62 @@ fpcpackage=y [default] fpcdir=../.. -[compiler] -includedir=src -sourcedir=src +[prerules] +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) +endif +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) +endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) [rules] .NOTPARALLEL: + +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +# If no fpmake exists and (dist)clean is called, do not try to build fpmake, it will +# most often fail because the dependencies are cleared. +# In case of a clean, simply do nothing +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +# In case of a distclean, perform an 'old'-style distclean. This to avoid problems +# when the package is compiled using fpcmake prior to running this clean using fpmake +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +# distinstall also installs the example-sources +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif + diff --git a/packages/proj4/Makefile.fpc.fpcmake b/packages/proj4/Makefile.fpc.fpcmake new file mode 100644 index 0000000000..aefe382750 --- /dev/null +++ b/packages/proj4/Makefile.fpc.fpcmake @@ -0,0 +1,25 @@ +# +# Makefile.fpc for proj.4 bindings +# + +[package] +name=proj4 +version=2.7.1 + +[target] +units=proj + +[require] + +[install] +fpcpackage=y + +[default] +fpcdir=../.. + +[compiler] +includedir=src +sourcedir=src + +[rules] +.NOTPARALLEL: diff --git a/packages/pthreads/Makefile b/packages/pthreads/Makefile index a2423245b4..3206cbbf9f 100644 --- a/packages/pthreads/Makefile +++ b/packages/pthreads/Makefile @@ -1,5 +1,5 @@ # -# Don't edit, this file is generated by FPCMake Version 2.0.0 [2011/12/04] +# Don't edit, this file is generated by FPCMake Version 2.0.0 [2012/01/09] # 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 @@ -294,574 +294,15 @@ endif endif override PACKAGE_NAME=pthreads override PACKAGE_VERSION=2.7.1 -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_UNITS+=pthreads +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_UNITS+=pthreads -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_UNITS+=pthreads +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) override INSTALL_FPCPACKAGE=y -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_INCLUDEDIR+=src -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 -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),sparc-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_SOURCEDIR+=src tests -endif ifdef REQUIRE_UNITSDIR override UNITSDIR+=$(REQUIRE_UNITSDIR) endif @@ -1446,25 +887,6 @@ DATESTR:=$(shell $(DATE) +%Y%m%d) else DATESTR= endif -ifndef UPXPROG -ifeq ($(OS_TARGET),go32v2) -UPXPROG:=1 -endif -ifeq ($(OS_TARGET),win32) -UPXPROG:= -endif -ifdef UPXPROG -UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH)))) -ifeq ($(UPXPROG),) -UPXPROG= -else -UPXPROG:=$(firstword $(UPXPROG)) -endif -else -UPXPROG= -endif -endif -export UPXPROG ZIPOPT=-9 ZIPEXT=.zip ifeq ($(USETAR),bz2) @@ -1474,195 +896,447 @@ else TAROPT=vz TAREXT=.tar.gz endif -override REQUIRE_PACKAGES=rtl +override REQUIRE_PACKAGES=rtl fpmkunit ifeq ($(FULL_TARGET),i386-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-go32v2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-win32) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-os2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-beos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-haiku) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-qnx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netware) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wdosx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-emx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-watcom) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netwlibc) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-nativent) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-iphonesim) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-atari) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-macos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-morphos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-wii) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-win64) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-gba) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-nds) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),avr-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),mipsel-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifdef REQUIRE_PACKAGES_RTL PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))) @@ -1702,6 +1376,158 @@ 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)))))) +ifneq ($(PACKAGEDIR_HASH),) +ifneq ($(wildcard $(PACKAGEDIR_HASH)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_HASH)/$(FPCMADE) +endif +else +PACKAGEDIR_HASH= +UNITDIR_HASH:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /hash/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_HASH),) +UNITDIR_HASH:=$(firstword $(UNITDIR_HASH)) +else +UNITDIR_HASH= +endif +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)))))) +ifneq ($(PACKAGEDIR_PASZLIB),) +ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE) +endif +else +PACKAGEDIR_PASZLIB= +UNITDIR_PASZLIB:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_PASZLIB),) +UNITDIR_PASZLIB:=$(firstword $(UNITDIR_PASZLIB)) +else +UNITDIR_PASZLIB= +endif +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)))))) +ifneq ($(PACKAGEDIR_FCL-PROCESS),) +ifneq ($(wildcard $(PACKAGEDIR_FCL-PROCESS)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FCL-PROCESS)/$(FPCMADE) +endif +else +PACKAGEDIR_FCL-PROCESS= +UNITDIR_FCL-PROCESS:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fcl-process/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FCL-PROCESS),) +UNITDIR_FCL-PROCESS:=$(firstword $(UNITDIR_FCL-PROCESS)) +else +UNITDIR_FCL-PROCESS= +endif +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 +ifdef REQUIRE_PACKAGES_FPMKUNIT +PACKAGEDIR_FPMKUNIT:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Makefile.fpc,$(PACKAGESDIR)))))) +ifneq ($(PACKAGEDIR_FPMKUNIT),) +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX)),) +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX) +else +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX) +else +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX) +else +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +endif +ifdef CHECKDEPEND +$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE): + $(MAKE) -C $(PACKAGEDIR_FPMKUNIT) $(FPCMADE) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE) +endif +else +PACKAGEDIR_FPMKUNIT= +UNITDIR_FPMKUNIT:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FPMKUNIT),) +UNITDIR_FPMKUNIT:=$(firstword $(UNITDIR_FPMKUNIT)) +else +UNITDIR_FPMKUNIT= +endif +endif +ifdef UNITDIR_FPMKUNIT +override COMPILER_UNITDIR+=$(UNITDIR_FPMKUNIT) +endif +ifdef UNITDIR_FPMAKE_FPMKUNIT +override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_FPMKUNIT) +endif +endif ifndef NOCPUDEF override FPCOPTDEF=$(ARCH) endif @@ -1718,12 +1544,16 @@ endif ifndef CROSSBOOTSTRAP ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-XP$(BINUTILSPREFIX) -override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) endif ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-Xr$(RLINKPATH) endif endif +ifndef CROSSCOMPILE +ifneq ($(BINUTILSPREFIX),) +override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) +endif +endif ifdef UNITDIR override FPCOPT+=$(addprefix -Fu,$(UNITDIR)) endif @@ -1857,93 +1687,10 @@ EXECPPAS:=@$(PPAS) endif endif endif -.PHONY: fpc_units -ifneq ($(TARGET_UNITS)$(TARGET_IMPLICITUNITS),) -override ALLTARGET+=fpc_units -override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS)) -override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS)) -override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -endif -fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES) ifdef TARGET_RSTS override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS)) override CLEANRSTFILES+=$(RSTFILES) endif -.PHONY: fpc_all fpc_smart fpc_debug fpc_release fpc_shared -$(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET) - @$(ECHOREDIR) Compiled > $(FPCMADE) -fpc_all: $(FPCMADE) -fpc_smart: - $(MAKE) all LINKSMART=1 CREATESMART=1 -fpc_debug: - $(MAKE) all DEBUG=1 -fpc_release: - $(MAKE) all RELEASE=1 -.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res -$(COMPILER_UNITTARGETDIR): - $(MKDIRTREE) $(COMPILER_UNITTARGETDIR) -$(COMPILER_TARGETDIR): - $(MKDIRTREE) $(COMPILER_TARGETDIR) -%$(PPUEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(PPUEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.lpr - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.dpr - $(COMPILER) $< - $(EXECPPAS) -%.res: %.rc - windres -i $< -o $@ -vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.inc $(COMPILER_INCLUDEDIR) -vpath %$(OEXT) $(COMPILER_UNITTARGETDIR) -vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR) -.PHONY: fpc_shared -override INSTALLTARGET+=fpc_shared_install -ifndef SHARED_LIBVERSION -SHARED_LIBVERSION=$(FPC_VERSION) -endif -ifndef SHARED_LIBNAME -SHARED_LIBNAME=$(PACKAGE_NAME) -endif -ifndef SHARED_FULLNAME -SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSION)$(SHAREDLIBEXT) -endif -ifndef SHARED_LIBUNITS -SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS) -override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_LIBUNITS)) -endif -fpc_shared: -ifdef HASSHAREDLIB - $(MAKE) all CREATESHARED=1 LINKSHARED=1 CREATESMART=1 -ifneq ($(SHARED_BUILD),n) - $(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR) -endif -else - @$(ECHO) Shared Libraries not supported -endif -fpc_shared_install: -ifneq ($(SHARED_BUILD),n) -ifneq ($(SHARED_LIBUNITS),) -ifneq ($(wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),) - $(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INSTALL_SHAREDDIR) -endif -endif -endif .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall ifdef INSTALL_UNITS override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS)) @@ -1967,9 +1714,6 @@ endif fpc_install: all $(INSTALLTARGET) ifdef INSTALLEXEFILES $(MKDIR) $(INSTALL_BINDIR) -ifdef UPXPROG - -$(UPXPROG) $(INSTALLEXEFILES) -endif $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR) endif ifdef INSTALL_CREATEPACKAGEFPC @@ -2228,7 +1972,6 @@ fpc_baseinfo: @$(ECHO) Date...... $(DATE) @$(ECHO) FPCMake... $(FPCMAKE) @$(ECHO) PPUMove... $(PPUMOVE) - @$(ECHO) Upx....... $(UPXPROG) @$(ECHO) Zip....... $(ZIPPROG) @$(ECHO) @$(ECHO) == Object info == @@ -2285,28 +2028,59 @@ endif fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS)) fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2 fpc_makefiles: fpc_makefile fpc_makefile_dirs -all: fpc_all -debug: fpc_debug -smart: fpc_smart -release: fpc_release -units: fpc_units +units: examples: -shared: fpc_shared -install: fpc_install +shared: sourceinstall: fpc_sourceinstall exampleinstall: fpc_exampleinstall -distinstall: fpc_distinstall zipinstall: fpc_zipinstall zipsourceinstall: fpc_zipsourceinstall zipexampleinstall: fpc_zipexampleinstall zipdistinstall: fpc_zipdistinstall -clean: fpc_clean -distclean: fpc_distclean -cleanall: fpc_cleanall +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: units examples shared sourceinstall exampleinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info makefiles ifneq ($(wildcard fpcmake.loc),) include fpcmake.loc endif .NOTPARALLEL: +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif diff --git a/packages/pthreads/Makefile.fpc b/packages/pthreads/Makefile.fpc index 16776d0542..ab7c02ddac 100644 --- a/packages/pthreads/Makefile.fpc +++ b/packages/pthreads/Makefile.fpc @@ -1,15 +1,13 @@ # -# Makefile.fpc for pthreads implementation +# Makefile.fpc for running fpmake # [package] name=pthreads version=2.7.1 -[target] -units=pthreads - [require] +packages=rtl fpmkunit [install] fpcpackage=y @@ -17,10 +15,62 @@ fpcpackage=y [default] fpcdir=../.. -[compiler] -includedir=src -sourcedir=src tests +[prerules] +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) +endif +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) +endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) [rules] .NOTPARALLEL: +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +# If no fpmake exists and (dist)clean is called, do not try to build fpmake, it will +# most often fail because the dependencies are cleared. +# In case of a clean, simply do nothing +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +# In case of a distclean, perform an 'old'-style distclean. This to avoid problems +# when the package is compiled using fpcmake prior to running this clean using fpmake +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +# distinstall also installs the example-sources +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif + diff --git a/packages/pthreads/Makefile.fpc.fpcmake b/packages/pthreads/Makefile.fpc.fpcmake new file mode 100644 index 0000000000..16776d0542 --- /dev/null +++ b/packages/pthreads/Makefile.fpc.fpcmake @@ -0,0 +1,26 @@ +# +# Makefile.fpc for pthreads implementation +# + +[package] +name=pthreads +version=2.7.1 + +[target] +units=pthreads + +[require] + +[install] +fpcpackage=y + +[default] +fpcdir=../.. + +[compiler] +includedir=src +sourcedir=src tests + +[rules] +.NOTPARALLEL: + diff --git a/packages/regexpr/Makefile b/packages/regexpr/Makefile index e26573edda..81f87be6e2 100644 --- a/packages/regexpr/Makefile +++ b/packages/regexpr/Makefile @@ -1,5 +1,5 @@ # -# Don't edit, this file is generated by FPCMake Version 2.0.0 [2011/12/04] +# Don't edit, this file is generated by FPCMake Version 2.0.0 [2012/01/09] # 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 @@ -294,952 +294,15 @@ endif endif override PACKAGE_NAME=regexpr override PACKAGE_VERSION=2.7.1 -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_UNITS+=regex regexpr oldregexpr -endif -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_EXAMPLEDIRS+=examples +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_EXAMPLEDIRS+=examples +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) override INSTALL_FPCPACKAGE=y -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),sparc-linux) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_OPTIONS+=-S2 -endif -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_INCLUDEDIR+=src -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 -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),sparc-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif ifdef REQUIRE_UNITSDIR override UNITSDIR+=$(REQUIRE_UNITSDIR) endif @@ -1824,25 +887,6 @@ DATESTR:=$(shell $(DATE) +%Y%m%d) else DATESTR= endif -ifndef UPXPROG -ifeq ($(OS_TARGET),go32v2) -UPXPROG:=1 -endif -ifeq ($(OS_TARGET),win32) -UPXPROG:= -endif -ifdef UPXPROG -UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH)))) -ifeq ($(UPXPROG),) -UPXPROG= -else -UPXPROG:=$(firstword $(UPXPROG)) -endif -else -UPXPROG= -endif -endif -export UPXPROG ZIPOPT=-9 ZIPEXT=.zip ifeq ($(USETAR),bz2) @@ -1852,195 +896,447 @@ else TAROPT=vz TAREXT=.tar.gz endif -override REQUIRE_PACKAGES=rtl +override REQUIRE_PACKAGES=rtl fpmkunit ifeq ($(FULL_TARGET),i386-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-go32v2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-win32) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-os2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-beos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-haiku) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-qnx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netware) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wdosx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-emx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-watcom) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netwlibc) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-nativent) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-iphonesim) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-atari) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-macos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-morphos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-wii) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-win64) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-gba) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-nds) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),avr-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),mipsel-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifdef REQUIRE_PACKAGES_RTL PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))) @@ -2080,6 +1376,158 @@ 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)))))) +ifneq ($(PACKAGEDIR_HASH),) +ifneq ($(wildcard $(PACKAGEDIR_HASH)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_HASH)/$(FPCMADE) +endif +else +PACKAGEDIR_HASH= +UNITDIR_HASH:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /hash/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_HASH),) +UNITDIR_HASH:=$(firstword $(UNITDIR_HASH)) +else +UNITDIR_HASH= +endif +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)))))) +ifneq ($(PACKAGEDIR_PASZLIB),) +ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE) +endif +else +PACKAGEDIR_PASZLIB= +UNITDIR_PASZLIB:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_PASZLIB),) +UNITDIR_PASZLIB:=$(firstword $(UNITDIR_PASZLIB)) +else +UNITDIR_PASZLIB= +endif +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)))))) +ifneq ($(PACKAGEDIR_FCL-PROCESS),) +ifneq ($(wildcard $(PACKAGEDIR_FCL-PROCESS)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FCL-PROCESS)/$(FPCMADE) +endif +else +PACKAGEDIR_FCL-PROCESS= +UNITDIR_FCL-PROCESS:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fcl-process/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FCL-PROCESS),) +UNITDIR_FCL-PROCESS:=$(firstword $(UNITDIR_FCL-PROCESS)) +else +UNITDIR_FCL-PROCESS= +endif +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 +ifdef REQUIRE_PACKAGES_FPMKUNIT +PACKAGEDIR_FPMKUNIT:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Makefile.fpc,$(PACKAGESDIR)))))) +ifneq ($(PACKAGEDIR_FPMKUNIT),) +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX)),) +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX) +else +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX) +else +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX) +else +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +endif +ifdef CHECKDEPEND +$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE): + $(MAKE) -C $(PACKAGEDIR_FPMKUNIT) $(FPCMADE) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE) +endif +else +PACKAGEDIR_FPMKUNIT= +UNITDIR_FPMKUNIT:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FPMKUNIT),) +UNITDIR_FPMKUNIT:=$(firstword $(UNITDIR_FPMKUNIT)) +else +UNITDIR_FPMKUNIT= +endif +endif +ifdef UNITDIR_FPMKUNIT +override COMPILER_UNITDIR+=$(UNITDIR_FPMKUNIT) +endif +ifdef UNITDIR_FPMAKE_FPMKUNIT +override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_FPMKUNIT) +endif +endif ifndef NOCPUDEF override FPCOPTDEF=$(ARCH) endif @@ -2096,12 +1544,16 @@ endif ifndef CROSSBOOTSTRAP ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-XP$(BINUTILSPREFIX) -override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) endif ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-Xr$(RLINKPATH) endif endif +ifndef CROSSCOMPILE +ifneq ($(BINUTILSPREFIX),) +override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) +endif +endif ifdef UNITDIR override FPCOPT+=$(addprefix -Fu,$(UNITDIR)) endif @@ -2235,113 +1687,10 @@ EXECPPAS:=@$(PPAS) endif endif endif -.PHONY: fpc_units -ifneq ($(TARGET_UNITS)$(TARGET_IMPLICITUNITS),) -override ALLTARGET+=fpc_units -override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS)) -override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS)) -override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -endif -fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES) ifdef TARGET_RSTS override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS)) override CLEANRSTFILES+=$(RSTFILES) endif -.PHONY: fpc_examples -ifneq ($(TARGET_EXAMPLES),) -HASEXAMPLES=1 -override EXAMPLESOURCEFILES:=$(wildcard $(addsuffix .pp,$(TARGET_EXAMPLES)) $(addsuffix .pas,$(TARGET_EXAMPLES)) $(addsuffix .lpr,$(TARGET_EXAMPLES)) $(addsuffix .dpr,$(TARGET_EXAMPLES))) -override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(TARGET_EXAMPLES)) -override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(TARGET_EXAMPLES)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES))) -override EXAMPLEDBGFILES:=$(addsuffix $(EXEDBGEXT),$(TARGET_EXAMPLES)) -override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES) -override CLEANEXEDBGFILES+=$(EXAMPLEDBGFILES) -ifeq ($(OS_TARGET),os2) -override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES)) -endif -ifeq ($(OS_TARGET),emx) -override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES)) -endif -endif -ifneq ($(TARGET_EXAMPLEDIRS),) -HASEXAMPLES=1 -endif -fpc_examples: all $(EXAMPLEFILES) $(addsuffix _all,$(TARGET_EXAMPLEDIRS)) -.PHONY: fpc_all fpc_smart fpc_debug fpc_release fpc_shared -$(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET) - @$(ECHOREDIR) Compiled > $(FPCMADE) -fpc_all: $(FPCMADE) -fpc_smart: - $(MAKE) all LINKSMART=1 CREATESMART=1 -fpc_debug: - $(MAKE) all DEBUG=1 -fpc_release: - $(MAKE) all RELEASE=1 -.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res -$(COMPILER_UNITTARGETDIR): - $(MKDIRTREE) $(COMPILER_UNITTARGETDIR) -$(COMPILER_TARGETDIR): - $(MKDIRTREE) $(COMPILER_TARGETDIR) -%$(PPUEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(PPUEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.lpr - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.dpr - $(COMPILER) $< - $(EXECPPAS) -%.res: %.rc - windres -i $< -o $@ -vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.inc $(COMPILER_INCLUDEDIR) -vpath %$(OEXT) $(COMPILER_UNITTARGETDIR) -vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR) -.PHONY: fpc_shared -override INSTALLTARGET+=fpc_shared_install -ifndef SHARED_LIBVERSION -SHARED_LIBVERSION=$(FPC_VERSION) -endif -ifndef SHARED_LIBNAME -SHARED_LIBNAME=$(PACKAGE_NAME) -endif -ifndef SHARED_FULLNAME -SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSION)$(SHAREDLIBEXT) -endif -ifndef SHARED_LIBUNITS -SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS) -override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_LIBUNITS)) -endif -fpc_shared: -ifdef HASSHAREDLIB - $(MAKE) all CREATESHARED=1 LINKSHARED=1 CREATESMART=1 -ifneq ($(SHARED_BUILD),n) - $(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR) -endif -else - @$(ECHO) Shared Libraries not supported -endif -fpc_shared_install: -ifneq ($(SHARED_BUILD),n) -ifneq ($(SHARED_LIBUNITS),) -ifneq ($(wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),) - $(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INSTALL_SHAREDDIR) -endif -endif -endif .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall ifdef INSTALL_UNITS override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS)) @@ -2365,9 +1714,6 @@ endif fpc_install: all $(INSTALLTARGET) ifdef INSTALLEXEFILES $(MKDIR) $(INSTALL_BINDIR) -ifdef UPXPROG - -$(UPXPROG) $(INSTALLEXEFILES) -endif $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR) endif ifdef INSTALL_CREATEPACKAGEFPC @@ -2626,7 +1972,6 @@ fpc_baseinfo: @$(ECHO) Date...... $(DATE) @$(ECHO) FPCMake... $(FPCMAKE) @$(ECHO) PPUMove... $(PPUMOVE) - @$(ECHO) Upx....... $(UPXPROG) @$(ECHO) Zip....... $(ZIPPROG) @$(ECHO) @$(ECHO) == Object info == @@ -2683,262 +2028,59 @@ endif fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS)) fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2 fpc_makefiles: fpc_makefile fpc_makefile_dirs -ifeq ($(FULL_TARGET),i386-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-go32v2) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-win32) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-os2) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-beos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-haiku) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-qnx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netware) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-openbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-wdosx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-emx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-watcom) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-wince) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-symbian) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-nativent) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-amiga) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-atari) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-palmos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-macos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-wii) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-win64) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-palmos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-wince) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-gba) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-nds) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-symbian) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),avr-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),armeb-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),armeb-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),mipsel-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifdef TARGET_EXAMPLEDIRS_EXAMPLES -examples_all: - $(MAKE) -C examples all -examples_debug: - $(MAKE) -C examples debug -examples_smart: - $(MAKE) -C examples smart -examples_release: - $(MAKE) -C examples release -examples_units: - $(MAKE) -C examples units -examples_examples: - $(MAKE) -C examples examples -examples_shared: - $(MAKE) -C examples shared -examples_install: - $(MAKE) -C examples install -examples_sourceinstall: - $(MAKE) -C examples sourceinstall -examples_exampleinstall: - $(MAKE) -C examples exampleinstall -examples_distinstall: - $(MAKE) -C examples distinstall -examples_zipinstall: - $(MAKE) -C examples zipinstall -examples_zipsourceinstall: - $(MAKE) -C examples zipsourceinstall -examples_zipexampleinstall: - $(MAKE) -C examples zipexampleinstall -examples_zipdistinstall: - $(MAKE) -C examples zipdistinstall -examples_clean: - $(MAKE) -C examples clean -examples_distclean: - $(MAKE) -C examples distclean -examples_cleanall: - $(MAKE) -C examples cleanall -examples_info: - $(MAKE) -C examples info -examples_makefiles: - $(MAKE) -C examples makefiles +units: examples: - $(MAKE) -C examples all -.PHONY: examples_all examples_debug examples_smart examples_release examples_units examples_examples examples_shared examples_install examples_sourceinstall examples_exampleinstall examples_distinstall examples_zipinstall examples_zipsourceinstall examples_zipexampleinstall examples_zipdistinstall examples_clean examples_distclean examples_cleanall examples_info examples_makefiles examples -endif -all: fpc_all -debug: fpc_debug -smart: fpc_smart -release: fpc_release -units: fpc_units -examples: fpc_examples -shared: fpc_shared -install: fpc_install +shared: sourceinstall: fpc_sourceinstall exampleinstall: fpc_exampleinstall -distinstall: fpc_distinstall zipinstall: fpc_zipinstall zipsourceinstall: fpc_zipsourceinstall zipexampleinstall: fpc_zipexampleinstall zipdistinstall: fpc_zipdistinstall -clean: fpc_clean $(addsuffix _clean,$(TARGET_EXAMPLEDIRS)) -distclean: fpc_distclean -cleanall: fpc_cleanall +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: units examples shared sourceinstall exampleinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info makefiles ifneq ($(wildcard fpcmake.loc),) include fpcmake.loc endif .NOTPARALLEL: +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif diff --git a/packages/regexpr/Makefile.fpc b/packages/regexpr/Makefile.fpc index 8884ed8ee3..29c1fcf60e 100644 --- a/packages/regexpr/Makefile.fpc +++ b/packages/regexpr/Makefile.fpc @@ -1,17 +1,13 @@ # -# Makefile.fpc for RegExpr +# Makefile.fpc for running fpmake # [package] name=regexpr version=2.7.1 -[target] -units=regex regexpr oldregexpr -exampledirs=examples - -[compiler] -options=-S2 +[require] +packages=rtl fpmkunit [install] fpcpackage=y @@ -19,10 +15,62 @@ fpcpackage=y [default] fpcdir=../.. -[compiler] -includedir=src -sourcedir=src tests examples +[prerules] +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) +endif +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) +endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) [rules] .NOTPARALLEL: +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +# If no fpmake exists and (dist)clean is called, do not try to build fpmake, it will +# most often fail because the dependencies are cleared. +# In case of a clean, simply do nothing +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +# In case of a distclean, perform an 'old'-style distclean. This to avoid problems +# when the package is compiled using fpcmake prior to running this clean using fpmake +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +# distinstall also installs the example-sources +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif + diff --git a/packages/regexpr/Makefile.fpc.fpcmake b/packages/regexpr/Makefile.fpc.fpcmake new file mode 100644 index 0000000000..8884ed8ee3 --- /dev/null +++ b/packages/regexpr/Makefile.fpc.fpcmake @@ -0,0 +1,28 @@ +# +# Makefile.fpc for RegExpr +# + +[package] +name=regexpr +version=2.7.1 + +[target] +units=regex regexpr oldregexpr +exampledirs=examples + +[compiler] +options=-S2 + +[install] +fpcpackage=y + +[default] +fpcdir=../.. + +[compiler] +includedir=src +sourcedir=src tests examples + +[rules] +.NOTPARALLEL: + diff --git a/packages/users/Makefile b/packages/users/Makefile index fb8171ea14..696d3a2893 100644 --- a/packages/users/Makefile +++ b/packages/users/Makefile @@ -1,5 +1,5 @@ # -# Don't edit, this file is generated by FPCMake Version 2.0.0 [2011/12/04] +# Don't edit, this file is generated by FPCMake Version 2.0.0 [2012/01/09] # 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 @@ -294,765 +294,15 @@ endif endif override PACKAGE_NAME=users override PACKAGE_VERSION=2.7.1 -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_UNITS+=grp pwd users shadow crypth -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_UNITS+=grp pwd users shadow crypth -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_UNITS+=grp pwd users shadow crypth -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_UNITS+=grp pwd users shadow crypth -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_UNITS+=grp pwd users shadow crypth -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_UNITS+=grp pwd users shadow crypth -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_UNITS+=grp pwd users shadow crypth -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_UNITS+=grp pwd users shadow crypth -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_UNITS+=grp pwd users -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_UNITS+=grp pwd users shadow crypth -endif -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_EXAMPLEDIRS+=examples +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_EXAMPLEDIRS+=examples +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) override INSTALL_FPCPACKAGE=y -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_INCLUDEDIR+=src -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 -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_SOURCEDIR+=src -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 -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_SOURCEDIR+=src -endif -override SHARED_BUILD=n -override SHARED_BUILD=n ifdef REQUIRE_UNITSDIR override UNITSDIR+=$(REQUIRE_UNITSDIR) endif @@ -1249,37 +499,6 @@ endif else CROSSBINDIR= endif -ifeq ($(OS_SOURCE),linux) -ifndef GCCLIBDIR -ifeq ($(CPU_TARGET),i386) -ifneq ($(findstring x86_64,$(shell uname -a)),) -ifeq ($(BINUTILSPREFIX),) -GCCLIBDIR:=$(shell dirname `gcc -m32 -print-libgcc-file-name`) -endif -endif -endif -ifeq ($(CPU_TARGET),powerpc64) -ifeq ($(BINUTILSPREFIX),) -GCCLIBDIR:=$(shell dirname `gcc -m64 -print-libgcc-file-name`) -endif -endif -endif -ifndef GCCLIBDIR -CROSSGCC=$(strip $(wildcard $(addsuffix /$(BINUTILSPREFIX)gcc$(SRCEXEEXT),$(SEARCHPATH)))) -ifneq ($(CROSSGCC),) -GCCLIBDIR:=$(shell dirname `$(CROSSGCC) -print-libgcc-file-name`) -endif -endif -ifndef OTHERLIBDIR -OTHERLIBDIR:=$(shell grep -v "^\#" /etc/ld.so.conf | awk '{ ORS=" "; print $1 }') -endif -endif -ifdef inUnix -ifeq ($(OS_SOURCE),netbsd) -OTHERLIBDIR+=/usr/pkg/lib -endif -export GCCLIBDIR OTHERLIB -endif BATCHEXT=.bat LOADEREXT=.as EXEEXT=.exe @@ -1668,25 +887,6 @@ DATESTR:=$(shell $(DATE) +%Y%m%d) else DATESTR= endif -ifndef UPXPROG -ifeq ($(OS_TARGET),go32v2) -UPXPROG:=1 -endif -ifeq ($(OS_TARGET),win32) -UPXPROG:= -endif -ifdef UPXPROG -UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH)))) -ifeq ($(UPXPROG),) -UPXPROG= -else -UPXPROG:=$(firstword $(UPXPROG)) -endif -else -UPXPROG= -endif -endif -export UPXPROG ZIPOPT=-9 ZIPEXT=.zip ifeq ($(USETAR),bz2) @@ -1696,195 +896,447 @@ else TAROPT=vz TAREXT=.tar.gz endif -override REQUIRE_PACKAGES=rtl +override REQUIRE_PACKAGES=rtl fpmkunit ifeq ($(FULL_TARGET),i386-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-go32v2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-win32) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-os2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-beos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-haiku) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-qnx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netware) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wdosx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-emx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-watcom) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netwlibc) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-nativent) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-iphonesim) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-atari) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-macos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-morphos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-wii) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-win64) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-gba) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-nds) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),avr-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),mipsel-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifdef REQUIRE_PACKAGES_RTL PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))) @@ -1924,6 +1376,158 @@ 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)))))) +ifneq ($(PACKAGEDIR_HASH),) +ifneq ($(wildcard $(PACKAGEDIR_HASH)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_HASH)/$(FPCMADE) +endif +else +PACKAGEDIR_HASH= +UNITDIR_HASH:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /hash/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_HASH),) +UNITDIR_HASH:=$(firstword $(UNITDIR_HASH)) +else +UNITDIR_HASH= +endif +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)))))) +ifneq ($(PACKAGEDIR_PASZLIB),) +ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE) +endif +else +PACKAGEDIR_PASZLIB= +UNITDIR_PASZLIB:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_PASZLIB),) +UNITDIR_PASZLIB:=$(firstword $(UNITDIR_PASZLIB)) +else +UNITDIR_PASZLIB= +endif +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)))))) +ifneq ($(PACKAGEDIR_FCL-PROCESS),) +ifneq ($(wildcard $(PACKAGEDIR_FCL-PROCESS)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FCL-PROCESS)/$(FPCMADE) +endif +else +PACKAGEDIR_FCL-PROCESS= +UNITDIR_FCL-PROCESS:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fcl-process/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FCL-PROCESS),) +UNITDIR_FCL-PROCESS:=$(firstword $(UNITDIR_FCL-PROCESS)) +else +UNITDIR_FCL-PROCESS= +endif +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 +ifdef REQUIRE_PACKAGES_FPMKUNIT +PACKAGEDIR_FPMKUNIT:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Makefile.fpc,$(PACKAGESDIR)))))) +ifneq ($(PACKAGEDIR_FPMKUNIT),) +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX)),) +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX) +else +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX) +else +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX) +else +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +endif +ifdef CHECKDEPEND +$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE): + $(MAKE) -C $(PACKAGEDIR_FPMKUNIT) $(FPCMADE) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE) +endif +else +PACKAGEDIR_FPMKUNIT= +UNITDIR_FPMKUNIT:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FPMKUNIT),) +UNITDIR_FPMKUNIT:=$(firstword $(UNITDIR_FPMKUNIT)) +else +UNITDIR_FPMKUNIT= +endif +endif +ifdef UNITDIR_FPMKUNIT +override COMPILER_UNITDIR+=$(UNITDIR_FPMKUNIT) +endif +ifdef UNITDIR_FPMAKE_FPMKUNIT +override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_FPMKUNIT) +endif +endif ifndef NOCPUDEF override FPCOPTDEF=$(ARCH) endif @@ -1940,12 +1544,16 @@ endif ifndef CROSSBOOTSTRAP ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-XP$(BINUTILSPREFIX) -override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) endif ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-Xr$(RLINKPATH) endif endif +ifndef CROSSCOMPILE +ifneq ($(BINUTILSPREFIX),) +override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) +endif +endif ifdef UNITDIR override FPCOPT+=$(addprefix -Fu,$(UNITDIR)) endif @@ -2045,12 +1653,6 @@ endif endif ifdef LINKSHARED endif -ifdef GCCLIBDIR -override FPCOPT+=-Fl$(GCCLIBDIR) -endif -ifdef OTHERLIBDIR -override FPCOPT+=$(addprefix -Fl,$(OTHERLIBDIR)) -endif ifdef OPT override FPCOPT+=$(OPT) endif @@ -2085,113 +1687,10 @@ EXECPPAS:=@$(PPAS) endif endif endif -.PHONY: fpc_units -ifneq ($(TARGET_UNITS)$(TARGET_IMPLICITUNITS),) -override ALLTARGET+=fpc_units -override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS)) -override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS)) -override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -endif -fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES) ifdef TARGET_RSTS override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS)) override CLEANRSTFILES+=$(RSTFILES) endif -.PHONY: fpc_examples -ifneq ($(TARGET_EXAMPLES),) -HASEXAMPLES=1 -override EXAMPLESOURCEFILES:=$(wildcard $(addsuffix .pp,$(TARGET_EXAMPLES)) $(addsuffix .pas,$(TARGET_EXAMPLES)) $(addsuffix .lpr,$(TARGET_EXAMPLES)) $(addsuffix .dpr,$(TARGET_EXAMPLES))) -override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(TARGET_EXAMPLES)) -override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(TARGET_EXAMPLES)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES))) -override EXAMPLEDBGFILES:=$(addsuffix $(EXEDBGEXT),$(TARGET_EXAMPLES)) -override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES) -override CLEANEXEDBGFILES+=$(EXAMPLEDBGFILES) -ifeq ($(OS_TARGET),os2) -override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES)) -endif -ifeq ($(OS_TARGET),emx) -override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES)) -endif -endif -ifneq ($(TARGET_EXAMPLEDIRS),) -HASEXAMPLES=1 -endif -fpc_examples: all $(EXAMPLEFILES) $(addsuffix _all,$(TARGET_EXAMPLEDIRS)) -.PHONY: fpc_all fpc_smart fpc_debug fpc_release fpc_shared -$(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET) - @$(ECHOREDIR) Compiled > $(FPCMADE) -fpc_all: $(FPCMADE) -fpc_smart: - $(MAKE) all LINKSMART=1 CREATESMART=1 -fpc_debug: - $(MAKE) all DEBUG=1 -fpc_release: - $(MAKE) all RELEASE=1 -.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res -$(COMPILER_UNITTARGETDIR): - $(MKDIRTREE) $(COMPILER_UNITTARGETDIR) -$(COMPILER_TARGETDIR): - $(MKDIRTREE) $(COMPILER_TARGETDIR) -%$(PPUEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(PPUEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.lpr - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.dpr - $(COMPILER) $< - $(EXECPPAS) -%.res: %.rc - windres -i $< -o $@ -vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.inc $(COMPILER_INCLUDEDIR) -vpath %$(OEXT) $(COMPILER_UNITTARGETDIR) -vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR) -.PHONY: fpc_shared -override INSTALLTARGET+=fpc_shared_install -ifndef SHARED_LIBVERSION -SHARED_LIBVERSION=$(FPC_VERSION) -endif -ifndef SHARED_LIBNAME -SHARED_LIBNAME=$(PACKAGE_NAME) -endif -ifndef SHARED_FULLNAME -SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSION)$(SHAREDLIBEXT) -endif -ifndef SHARED_LIBUNITS -SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS) -override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_LIBUNITS)) -endif -fpc_shared: -ifdef HASSHAREDLIB - $(MAKE) all CREATESHARED=1 LINKSHARED=1 CREATESMART=1 -ifneq ($(SHARED_BUILD),n) - $(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR) -endif -else - @$(ECHO) Shared Libraries not supported -endif -fpc_shared_install: -ifneq ($(SHARED_BUILD),n) -ifneq ($(SHARED_LIBUNITS),) -ifneq ($(wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),) - $(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INSTALL_SHAREDDIR) -endif -endif -endif .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall ifdef INSTALL_UNITS override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS)) @@ -2215,9 +1714,6 @@ endif fpc_install: all $(INSTALLTARGET) ifdef INSTALLEXEFILES $(MKDIR) $(INSTALL_BINDIR) -ifdef UPXPROG - -$(UPXPROG) $(INSTALLEXEFILES) -endif $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR) endif ifdef INSTALL_CREATEPACKAGEFPC @@ -2476,7 +1972,6 @@ fpc_baseinfo: @$(ECHO) Date...... $(DATE) @$(ECHO) FPCMake... $(FPCMAKE) @$(ECHO) PPUMove... $(PPUMOVE) - @$(ECHO) Upx....... $(UPXPROG) @$(ECHO) Zip....... $(ZIPPROG) @$(ECHO) @$(ECHO) == Object info == @@ -2533,262 +2028,59 @@ endif fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS)) fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2 fpc_makefiles: fpc_makefile fpc_makefile_dirs -ifeq ($(FULL_TARGET),i386-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-go32v2) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-win32) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-os2) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-beos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-haiku) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-qnx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netware) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-openbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-wdosx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-emx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-watcom) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-wince) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-symbian) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-nativent) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-amiga) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-atari) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-palmos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-macos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-wii) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-win64) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-palmos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-wince) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-gba) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-nds) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-symbian) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),avr-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),armeb-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),armeb-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),mipsel-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifdef TARGET_EXAMPLEDIRS_EXAMPLES -examples_all: - $(MAKE) -C examples all -examples_debug: - $(MAKE) -C examples debug -examples_smart: - $(MAKE) -C examples smart -examples_release: - $(MAKE) -C examples release -examples_units: - $(MAKE) -C examples units -examples_examples: - $(MAKE) -C examples examples -examples_shared: - $(MAKE) -C examples shared -examples_install: - $(MAKE) -C examples install -examples_sourceinstall: - $(MAKE) -C examples sourceinstall -examples_exampleinstall: - $(MAKE) -C examples exampleinstall -examples_distinstall: - $(MAKE) -C examples distinstall -examples_zipinstall: - $(MAKE) -C examples zipinstall -examples_zipsourceinstall: - $(MAKE) -C examples zipsourceinstall -examples_zipexampleinstall: - $(MAKE) -C examples zipexampleinstall -examples_zipdistinstall: - $(MAKE) -C examples zipdistinstall -examples_clean: - $(MAKE) -C examples clean -examples_distclean: - $(MAKE) -C examples distclean -examples_cleanall: - $(MAKE) -C examples cleanall -examples_info: - $(MAKE) -C examples info -examples_makefiles: - $(MAKE) -C examples makefiles +units: examples: - $(MAKE) -C examples all -.PHONY: examples_all examples_debug examples_smart examples_release examples_units examples_examples examples_shared examples_install examples_sourceinstall examples_exampleinstall examples_distinstall examples_zipinstall examples_zipsourceinstall examples_zipexampleinstall examples_zipdistinstall examples_clean examples_distclean examples_cleanall examples_info examples_makefiles examples -endif -all: fpc_all -debug: fpc_debug -smart: fpc_smart -release: fpc_release -units: fpc_units -examples: fpc_examples -shared: fpc_shared -install: fpc_install +shared: sourceinstall: fpc_sourceinstall exampleinstall: fpc_exampleinstall -distinstall: fpc_distinstall zipinstall: fpc_zipinstall zipsourceinstall: fpc_zipsourceinstall zipexampleinstall: fpc_zipexampleinstall zipdistinstall: fpc_zipdistinstall -clean: fpc_clean $(addsuffix _clean,$(TARGET_EXAMPLEDIRS)) -distclean: fpc_distclean -cleanall: fpc_cleanall +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: units examples shared sourceinstall exampleinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info makefiles ifneq ($(wildcard fpcmake.loc),) include fpcmake.loc endif .NOTPARALLEL: +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif diff --git a/packages/users/Makefile.fpc b/packages/users/Makefile.fpc index 80a6d662f3..bb3c113b1c 100644 --- a/packages/users/Makefile.fpc +++ b/packages/users/Makefile.fpc @@ -1,18 +1,13 @@ # -# Makefile.fpc for Users bindings +# Makefile.fpc for running fpmake # [package] name=users version=2.7.1 -[target] -units=grp pwd users -units_linux=shadow crypth -exampledirs=examples - [require] -libc=y +packages=rtl fpmkunit [install] fpcpackage=y @@ -20,12 +15,62 @@ fpcpackage=y [default] fpcdir=../.. -[compiler] -includedir=src -sourcedir=src - -[shared] -build=n +[prerules] +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) +endif +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) +endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) [rules] .NOTPARALLEL: + +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +# If no fpmake exists and (dist)clean is called, do not try to build fpmake, it will +# most often fail because the dependencies are cleared. +# In case of a clean, simply do nothing +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +# In case of a distclean, perform an 'old'-style distclean. This to avoid problems +# when the package is compiled using fpcmake prior to running this clean using fpmake +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +# distinstall also installs the example-sources +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif + diff --git a/packages/users/Makefile.fpc.fpcmake b/packages/users/Makefile.fpc.fpcmake new file mode 100644 index 0000000000..80a6d662f3 --- /dev/null +++ b/packages/users/Makefile.fpc.fpcmake @@ -0,0 +1,31 @@ +# +# Makefile.fpc for Users bindings +# + +[package] +name=users +version=2.7.1 + +[target] +units=grp pwd users +units_linux=shadow crypth +exampledirs=examples + +[require] +libc=y + +[install] +fpcpackage=y + +[default] +fpcdir=../.. + +[compiler] +includedir=src +sourcedir=src + +[shared] +build=n + +[rules] +.NOTPARALLEL: diff --git a/packages/utmp/Makefile b/packages/utmp/Makefile index 389a99cf28..69c3a84e22 100644 --- a/packages/utmp/Makefile +++ b/packages/utmp/Makefile @@ -1,5 +1,5 @@ # -# Don't edit, this file is generated by FPCMake Version 2.0.0 [2011/12/04] +# Don't edit, this file is generated by FPCMake Version 2.0.0 [2012/01/09] # 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 @@ -294,763 +294,15 @@ endif endif override PACKAGE_NAME=utmp override PACKAGE_VERSION=2.7.1 -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_UNITS+=utmp -endif -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_EXAMPLEDIRS+=examples +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_EXAMPLEDIRS+=examples +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) override INSTALL_FPCPACKAGE=y -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_INCLUDEDIR+=src -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 -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_SOURCEDIR+=src -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 -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_SOURCEDIR+=src -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_SOURCEDIR+=src -endif ifdef REQUIRE_UNITSDIR override UNITSDIR+=$(REQUIRE_UNITSDIR) endif @@ -1635,25 +887,6 @@ DATESTR:=$(shell $(DATE) +%Y%m%d) else DATESTR= endif -ifndef UPXPROG -ifeq ($(OS_TARGET),go32v2) -UPXPROG:=1 -endif -ifeq ($(OS_TARGET),win32) -UPXPROG:= -endif -ifdef UPXPROG -UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH)))) -ifeq ($(UPXPROG),) -UPXPROG= -else -UPXPROG:=$(firstword $(UPXPROG)) -endif -else -UPXPROG= -endif -endif -export UPXPROG ZIPOPT=-9 ZIPEXT=.zip ifeq ($(USETAR),bz2) @@ -1663,195 +896,447 @@ else TAROPT=vz TAREXT=.tar.gz endif -override REQUIRE_PACKAGES=rtl +override REQUIRE_PACKAGES=rtl fpmkunit ifeq ($(FULL_TARGET),i386-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-go32v2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-win32) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-os2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-beos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-haiku) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-qnx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netware) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wdosx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-emx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-watcom) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netwlibc) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-nativent) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-iphonesim) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-atari) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-macos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-morphos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-wii) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-win64) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-gba) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-nds) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),avr-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),mipsel-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifdef REQUIRE_PACKAGES_RTL PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))) @@ -1891,6 +1376,158 @@ 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)))))) +ifneq ($(PACKAGEDIR_HASH),) +ifneq ($(wildcard $(PACKAGEDIR_HASH)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_HASH)/$(FPCMADE) +endif +else +PACKAGEDIR_HASH= +UNITDIR_HASH:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /hash/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_HASH),) +UNITDIR_HASH:=$(firstword $(UNITDIR_HASH)) +else +UNITDIR_HASH= +endif +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)))))) +ifneq ($(PACKAGEDIR_PASZLIB),) +ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE) +endif +else +PACKAGEDIR_PASZLIB= +UNITDIR_PASZLIB:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_PASZLIB),) +UNITDIR_PASZLIB:=$(firstword $(UNITDIR_PASZLIB)) +else +UNITDIR_PASZLIB= +endif +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)))))) +ifneq ($(PACKAGEDIR_FCL-PROCESS),) +ifneq ($(wildcard $(PACKAGEDIR_FCL-PROCESS)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FCL-PROCESS)/$(FPCMADE) +endif +else +PACKAGEDIR_FCL-PROCESS= +UNITDIR_FCL-PROCESS:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fcl-process/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FCL-PROCESS),) +UNITDIR_FCL-PROCESS:=$(firstword $(UNITDIR_FCL-PROCESS)) +else +UNITDIR_FCL-PROCESS= +endif +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 +ifdef REQUIRE_PACKAGES_FPMKUNIT +PACKAGEDIR_FPMKUNIT:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Makefile.fpc,$(PACKAGESDIR)))))) +ifneq ($(PACKAGEDIR_FPMKUNIT),) +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX)),) +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX) +else +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX) +else +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX) +else +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +endif +ifdef CHECKDEPEND +$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE): + $(MAKE) -C $(PACKAGEDIR_FPMKUNIT) $(FPCMADE) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE) +endif +else +PACKAGEDIR_FPMKUNIT= +UNITDIR_FPMKUNIT:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FPMKUNIT),) +UNITDIR_FPMKUNIT:=$(firstword $(UNITDIR_FPMKUNIT)) +else +UNITDIR_FPMKUNIT= +endif +endif +ifdef UNITDIR_FPMKUNIT +override COMPILER_UNITDIR+=$(UNITDIR_FPMKUNIT) +endif +ifdef UNITDIR_FPMAKE_FPMKUNIT +override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_FPMKUNIT) +endif +endif ifndef NOCPUDEF override FPCOPTDEF=$(ARCH) endif @@ -1907,12 +1544,16 @@ endif ifndef CROSSBOOTSTRAP ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-XP$(BINUTILSPREFIX) -override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) endif ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-Xr$(RLINKPATH) endif endif +ifndef CROSSCOMPILE +ifneq ($(BINUTILSPREFIX),) +override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) +endif +endif ifdef UNITDIR override FPCOPT+=$(addprefix -Fu,$(UNITDIR)) endif @@ -2046,113 +1687,10 @@ EXECPPAS:=@$(PPAS) endif endif endif -.PHONY: fpc_units -ifneq ($(TARGET_UNITS)$(TARGET_IMPLICITUNITS),) -override ALLTARGET+=fpc_units -override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS)) -override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS)) -override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -endif -fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES) ifdef TARGET_RSTS override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS)) override CLEANRSTFILES+=$(RSTFILES) endif -.PHONY: fpc_examples -ifneq ($(TARGET_EXAMPLES),) -HASEXAMPLES=1 -override EXAMPLESOURCEFILES:=$(wildcard $(addsuffix .pp,$(TARGET_EXAMPLES)) $(addsuffix .pas,$(TARGET_EXAMPLES)) $(addsuffix .lpr,$(TARGET_EXAMPLES)) $(addsuffix .dpr,$(TARGET_EXAMPLES))) -override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(TARGET_EXAMPLES)) -override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(TARGET_EXAMPLES)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES))) -override EXAMPLEDBGFILES:=$(addsuffix $(EXEDBGEXT),$(TARGET_EXAMPLES)) -override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES) -override CLEANEXEDBGFILES+=$(EXAMPLEDBGFILES) -ifeq ($(OS_TARGET),os2) -override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES)) -endif -ifeq ($(OS_TARGET),emx) -override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES)) -endif -endif -ifneq ($(TARGET_EXAMPLEDIRS),) -HASEXAMPLES=1 -endif -fpc_examples: all $(EXAMPLEFILES) $(addsuffix _all,$(TARGET_EXAMPLEDIRS)) -.PHONY: fpc_all fpc_smart fpc_debug fpc_release fpc_shared -$(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET) - @$(ECHOREDIR) Compiled > $(FPCMADE) -fpc_all: $(FPCMADE) -fpc_smart: - $(MAKE) all LINKSMART=1 CREATESMART=1 -fpc_debug: - $(MAKE) all DEBUG=1 -fpc_release: - $(MAKE) all RELEASE=1 -.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res -$(COMPILER_UNITTARGETDIR): - $(MKDIRTREE) $(COMPILER_UNITTARGETDIR) -$(COMPILER_TARGETDIR): - $(MKDIRTREE) $(COMPILER_TARGETDIR) -%$(PPUEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(PPUEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.lpr - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.dpr - $(COMPILER) $< - $(EXECPPAS) -%.res: %.rc - windres -i $< -o $@ -vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.inc $(COMPILER_INCLUDEDIR) -vpath %$(OEXT) $(COMPILER_UNITTARGETDIR) -vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR) -.PHONY: fpc_shared -override INSTALLTARGET+=fpc_shared_install -ifndef SHARED_LIBVERSION -SHARED_LIBVERSION=$(FPC_VERSION) -endif -ifndef SHARED_LIBNAME -SHARED_LIBNAME=$(PACKAGE_NAME) -endif -ifndef SHARED_FULLNAME -SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSION)$(SHAREDLIBEXT) -endif -ifndef SHARED_LIBUNITS -SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS) -override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_LIBUNITS)) -endif -fpc_shared: -ifdef HASSHAREDLIB - $(MAKE) all CREATESHARED=1 LINKSHARED=1 CREATESMART=1 -ifneq ($(SHARED_BUILD),n) - $(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR) -endif -else - @$(ECHO) Shared Libraries not supported -endif -fpc_shared_install: -ifneq ($(SHARED_BUILD),n) -ifneq ($(SHARED_LIBUNITS),) -ifneq ($(wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),) - $(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INSTALL_SHAREDDIR) -endif -endif -endif .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall ifdef INSTALL_UNITS override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS)) @@ -2176,9 +1714,6 @@ endif fpc_install: all $(INSTALLTARGET) ifdef INSTALLEXEFILES $(MKDIR) $(INSTALL_BINDIR) -ifdef UPXPROG - -$(UPXPROG) $(INSTALLEXEFILES) -endif $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR) endif ifdef INSTALL_CREATEPACKAGEFPC @@ -2437,7 +1972,6 @@ fpc_baseinfo: @$(ECHO) Date...... $(DATE) @$(ECHO) FPCMake... $(FPCMAKE) @$(ECHO) PPUMove... $(PPUMOVE) - @$(ECHO) Upx....... $(UPXPROG) @$(ECHO) Zip....... $(ZIPPROG) @$(ECHO) @$(ECHO) == Object info == @@ -2494,262 +2028,59 @@ endif fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS)) fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2 fpc_makefiles: fpc_makefile fpc_makefile_dirs -ifeq ($(FULL_TARGET),i386-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-go32v2) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-win32) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-os2) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-beos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-haiku) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-qnx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netware) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-openbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-wdosx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-emx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-watcom) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-wince) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-symbian) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-nativent) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-amiga) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-atari) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-palmos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-macos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-wii) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-win64) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-palmos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-wince) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-gba) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-nds) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-symbian) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),avr-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),armeb-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),armeb-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),mipsel-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifdef TARGET_EXAMPLEDIRS_EXAMPLES -examples_all: - $(MAKE) -C examples all -examples_debug: - $(MAKE) -C examples debug -examples_smart: - $(MAKE) -C examples smart -examples_release: - $(MAKE) -C examples release -examples_units: - $(MAKE) -C examples units -examples_examples: - $(MAKE) -C examples examples -examples_shared: - $(MAKE) -C examples shared -examples_install: - $(MAKE) -C examples install -examples_sourceinstall: - $(MAKE) -C examples sourceinstall -examples_exampleinstall: - $(MAKE) -C examples exampleinstall -examples_distinstall: - $(MAKE) -C examples distinstall -examples_zipinstall: - $(MAKE) -C examples zipinstall -examples_zipsourceinstall: - $(MAKE) -C examples zipsourceinstall -examples_zipexampleinstall: - $(MAKE) -C examples zipexampleinstall -examples_zipdistinstall: - $(MAKE) -C examples zipdistinstall -examples_clean: - $(MAKE) -C examples clean -examples_distclean: - $(MAKE) -C examples distclean -examples_cleanall: - $(MAKE) -C examples cleanall -examples_info: - $(MAKE) -C examples info -examples_makefiles: - $(MAKE) -C examples makefiles +units: examples: - $(MAKE) -C examples all -.PHONY: examples_all examples_debug examples_smart examples_release examples_units examples_examples examples_shared examples_install examples_sourceinstall examples_exampleinstall examples_distinstall examples_zipinstall examples_zipsourceinstall examples_zipexampleinstall examples_zipdistinstall examples_clean examples_distclean examples_cleanall examples_info examples_makefiles examples -endif -all: fpc_all -debug: fpc_debug -smart: fpc_smart -release: fpc_release -units: fpc_units -examples: fpc_examples -shared: fpc_shared -install: fpc_install +shared: sourceinstall: fpc_sourceinstall exampleinstall: fpc_exampleinstall -distinstall: fpc_distinstall zipinstall: fpc_zipinstall zipsourceinstall: fpc_zipsourceinstall zipexampleinstall: fpc_zipexampleinstall zipdistinstall: fpc_zipdistinstall -clean: fpc_clean $(addsuffix _clean,$(TARGET_EXAMPLEDIRS)) -distclean: fpc_distclean -cleanall: fpc_cleanall +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: units examples shared sourceinstall exampleinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info makefiles ifneq ($(wildcard fpcmake.loc),) include fpcmake.loc endif .NOTPARALLEL: +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif diff --git a/packages/utmp/Makefile.fpc b/packages/utmp/Makefile.fpc index ebae5cd949..b493cda377 100644 --- a/packages/utmp/Makefile.fpc +++ b/packages/utmp/Makefile.fpc @@ -1,24 +1,76 @@ # -# Makefile.fpc for UTmp Unit +# Makefile.fpc for running fpmake # [package] name=utmp version=2.7.1 -[target] -units=utmp -exampledirs=examples +[require] +packages=rtl fpmkunit [install] fpcpackage=y -[compiler] -includedir=src -sourcedir=src - [default] fpcdir=../.. +[prerules] +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) +endif +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) +endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) + [rules] .NOTPARALLEL: + +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +# If no fpmake exists and (dist)clean is called, do not try to build fpmake, it will +# most often fail because the dependencies are cleared. +# In case of a clean, simply do nothing +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +# In case of a distclean, perform an 'old'-style distclean. This to avoid problems +# when the package is compiled using fpcmake prior to running this clean using fpmake +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +# distinstall also installs the example-sources +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif + diff --git a/packages/utmp/Makefile.fpc.fpcmake b/packages/utmp/Makefile.fpc.fpcmake new file mode 100644 index 0000000000..ebae5cd949 --- /dev/null +++ b/packages/utmp/Makefile.fpc.fpcmake @@ -0,0 +1,24 @@ +# +# Makefile.fpc for UTmp Unit +# + +[package] +name=utmp +version=2.7.1 + +[target] +units=utmp +exampledirs=examples + +[install] +fpcpackage=y + +[compiler] +includedir=src +sourcedir=src + +[default] +fpcdir=../.. + +[rules] +.NOTPARALLEL: diff --git a/packages/uuid/Makefile b/packages/uuid/Makefile index 4893ed843e..8cb73269f0 100644 --- a/packages/uuid/Makefile +++ b/packages/uuid/Makefile @@ -1,5 +1,5 @@ # -# Don't edit, this file is generated by FPCMake Version 2.0.0 [2011/12/04] +# Don't edit, this file is generated by FPCMake Version 2.0.0 [2012/01/09] # 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 @@ -294,952 +294,15 @@ endif endif override PACKAGE_NAME=uuid override PACKAGE_VERSION=2.7.1 -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_UNITS+=macuuid libuuid -endif -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_EXAMPLEDIRS+=examples +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_EXAMPLEDIRS+=examples +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) override INSTALL_FPCPACKAGE=y -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_INCLUDEDIR+=src -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 -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),sparc-linux) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_UNITDIR+=units/$(OS_TARGET) -endif -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),sparc-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif ifdef REQUIRE_UNITSDIR override UNITSDIR+=$(REQUIRE_UNITSDIR) endif @@ -1824,25 +887,6 @@ DATESTR:=$(shell $(DATE) +%Y%m%d) else DATESTR= endif -ifndef UPXPROG -ifeq ($(OS_TARGET),go32v2) -UPXPROG:=1 -endif -ifeq ($(OS_TARGET),win32) -UPXPROG:= -endif -ifdef UPXPROG -UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH)))) -ifeq ($(UPXPROG),) -UPXPROG= -else -UPXPROG:=$(firstword $(UPXPROG)) -endif -else -UPXPROG= -endif -endif -export UPXPROG ZIPOPT=-9 ZIPEXT=.zip ifeq ($(USETAR),bz2) @@ -1852,195 +896,447 @@ else TAROPT=vz TAREXT=.tar.gz endif -override REQUIRE_PACKAGES=rtl +override REQUIRE_PACKAGES=rtl fpmkunit ifeq ($(FULL_TARGET),i386-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-go32v2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-win32) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-os2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-beos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-haiku) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-qnx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netware) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wdosx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-emx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-watcom) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netwlibc) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-nativent) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-iphonesim) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-atari) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-macos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-morphos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-wii) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-win64) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-gba) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-nds) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),avr-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),mipsel-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifdef REQUIRE_PACKAGES_RTL PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))) @@ -2080,6 +1376,158 @@ 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)))))) +ifneq ($(PACKAGEDIR_HASH),) +ifneq ($(wildcard $(PACKAGEDIR_HASH)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_HASH)/$(FPCMADE) +endif +else +PACKAGEDIR_HASH= +UNITDIR_HASH:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /hash/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_HASH),) +UNITDIR_HASH:=$(firstword $(UNITDIR_HASH)) +else +UNITDIR_HASH= +endif +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)))))) +ifneq ($(PACKAGEDIR_PASZLIB),) +ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE) +endif +else +PACKAGEDIR_PASZLIB= +UNITDIR_PASZLIB:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_PASZLIB),) +UNITDIR_PASZLIB:=$(firstword $(UNITDIR_PASZLIB)) +else +UNITDIR_PASZLIB= +endif +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)))))) +ifneq ($(PACKAGEDIR_FCL-PROCESS),) +ifneq ($(wildcard $(PACKAGEDIR_FCL-PROCESS)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FCL-PROCESS)/$(FPCMADE) +endif +else +PACKAGEDIR_FCL-PROCESS= +UNITDIR_FCL-PROCESS:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fcl-process/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FCL-PROCESS),) +UNITDIR_FCL-PROCESS:=$(firstword $(UNITDIR_FCL-PROCESS)) +else +UNITDIR_FCL-PROCESS= +endif +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 +ifdef REQUIRE_PACKAGES_FPMKUNIT +PACKAGEDIR_FPMKUNIT:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Makefile.fpc,$(PACKAGESDIR)))))) +ifneq ($(PACKAGEDIR_FPMKUNIT),) +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX)),) +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX) +else +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX) +else +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX) +else +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +endif +ifdef CHECKDEPEND +$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE): + $(MAKE) -C $(PACKAGEDIR_FPMKUNIT) $(FPCMADE) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE) +endif +else +PACKAGEDIR_FPMKUNIT= +UNITDIR_FPMKUNIT:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FPMKUNIT),) +UNITDIR_FPMKUNIT:=$(firstword $(UNITDIR_FPMKUNIT)) +else +UNITDIR_FPMKUNIT= +endif +endif +ifdef UNITDIR_FPMKUNIT +override COMPILER_UNITDIR+=$(UNITDIR_FPMKUNIT) +endif +ifdef UNITDIR_FPMAKE_FPMKUNIT +override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_FPMKUNIT) +endif +endif ifndef NOCPUDEF override FPCOPTDEF=$(ARCH) endif @@ -2096,12 +1544,16 @@ endif ifndef CROSSBOOTSTRAP ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-XP$(BINUTILSPREFIX) -override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) endif ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-Xr$(RLINKPATH) endif endif +ifndef CROSSCOMPILE +ifneq ($(BINUTILSPREFIX),) +override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) +endif +endif ifdef UNITDIR override FPCOPT+=$(addprefix -Fu,$(UNITDIR)) endif @@ -2235,113 +1687,10 @@ EXECPPAS:=@$(PPAS) endif endif endif -.PHONY: fpc_units -ifneq ($(TARGET_UNITS)$(TARGET_IMPLICITUNITS),) -override ALLTARGET+=fpc_units -override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS)) -override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS)) -override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -endif -fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES) ifdef TARGET_RSTS override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS)) override CLEANRSTFILES+=$(RSTFILES) endif -.PHONY: fpc_examples -ifneq ($(TARGET_EXAMPLES),) -HASEXAMPLES=1 -override EXAMPLESOURCEFILES:=$(wildcard $(addsuffix .pp,$(TARGET_EXAMPLES)) $(addsuffix .pas,$(TARGET_EXAMPLES)) $(addsuffix .lpr,$(TARGET_EXAMPLES)) $(addsuffix .dpr,$(TARGET_EXAMPLES))) -override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(TARGET_EXAMPLES)) -override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(TARGET_EXAMPLES)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES))) -override EXAMPLEDBGFILES:=$(addsuffix $(EXEDBGEXT),$(TARGET_EXAMPLES)) -override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES) -override CLEANEXEDBGFILES+=$(EXAMPLEDBGFILES) -ifeq ($(OS_TARGET),os2) -override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES)) -endif -ifeq ($(OS_TARGET),emx) -override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES)) -endif -endif -ifneq ($(TARGET_EXAMPLEDIRS),) -HASEXAMPLES=1 -endif -fpc_examples: all $(EXAMPLEFILES) $(addsuffix _all,$(TARGET_EXAMPLEDIRS)) -.PHONY: fpc_all fpc_smart fpc_debug fpc_release fpc_shared -$(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET) - @$(ECHOREDIR) Compiled > $(FPCMADE) -fpc_all: $(FPCMADE) -fpc_smart: - $(MAKE) all LINKSMART=1 CREATESMART=1 -fpc_debug: - $(MAKE) all DEBUG=1 -fpc_release: - $(MAKE) all RELEASE=1 -.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res -$(COMPILER_UNITTARGETDIR): - $(MKDIRTREE) $(COMPILER_UNITTARGETDIR) -$(COMPILER_TARGETDIR): - $(MKDIRTREE) $(COMPILER_TARGETDIR) -%$(PPUEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(PPUEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.lpr - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.dpr - $(COMPILER) $< - $(EXECPPAS) -%.res: %.rc - windres -i $< -o $@ -vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.inc $(COMPILER_INCLUDEDIR) -vpath %$(OEXT) $(COMPILER_UNITTARGETDIR) -vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR) -.PHONY: fpc_shared -override INSTALLTARGET+=fpc_shared_install -ifndef SHARED_LIBVERSION -SHARED_LIBVERSION=$(FPC_VERSION) -endif -ifndef SHARED_LIBNAME -SHARED_LIBNAME=$(PACKAGE_NAME) -endif -ifndef SHARED_FULLNAME -SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSION)$(SHAREDLIBEXT) -endif -ifndef SHARED_LIBUNITS -SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS) -override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_LIBUNITS)) -endif -fpc_shared: -ifdef HASSHAREDLIB - $(MAKE) all CREATESHARED=1 LINKSHARED=1 CREATESMART=1 -ifneq ($(SHARED_BUILD),n) - $(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR) -endif -else - @$(ECHO) Shared Libraries not supported -endif -fpc_shared_install: -ifneq ($(SHARED_BUILD),n) -ifneq ($(SHARED_LIBUNITS),) -ifneq ($(wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),) - $(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INSTALL_SHAREDDIR) -endif -endif -endif .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall ifdef INSTALL_UNITS override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS)) @@ -2365,9 +1714,6 @@ endif fpc_install: all $(INSTALLTARGET) ifdef INSTALLEXEFILES $(MKDIR) $(INSTALL_BINDIR) -ifdef UPXPROG - -$(UPXPROG) $(INSTALLEXEFILES) -endif $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR) endif ifdef INSTALL_CREATEPACKAGEFPC @@ -2626,7 +1972,6 @@ fpc_baseinfo: @$(ECHO) Date...... $(DATE) @$(ECHO) FPCMake... $(FPCMAKE) @$(ECHO) PPUMove... $(PPUMOVE) - @$(ECHO) Upx....... $(UPXPROG) @$(ECHO) Zip....... $(ZIPPROG) @$(ECHO) @$(ECHO) == Object info == @@ -2683,263 +2028,59 @@ endif fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS)) fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2 fpc_makefiles: fpc_makefile fpc_makefile_dirs -ifeq ($(FULL_TARGET),i386-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-go32v2) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-win32) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-os2) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-beos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-haiku) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-qnx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netware) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-openbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-wdosx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-emx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-watcom) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-wince) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-symbian) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-nativent) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-amiga) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-atari) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-palmos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-macos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-wii) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-win64) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-palmos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-wince) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-gba) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-nds) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-symbian) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),avr-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),armeb-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),armeb-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),mipsel-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifdef TARGET_EXAMPLEDIRS_EXAMPLES -examples_all: - $(MAKE) -C examples all -examples_debug: - $(MAKE) -C examples debug -examples_smart: - $(MAKE) -C examples smart -examples_release: - $(MAKE) -C examples release -examples_units: - $(MAKE) -C examples units -examples_examples: - $(MAKE) -C examples examples -examples_shared: - $(MAKE) -C examples shared -examples_install: - $(MAKE) -C examples install -examples_sourceinstall: - $(MAKE) -C examples sourceinstall -examples_exampleinstall: - $(MAKE) -C examples exampleinstall -examples_distinstall: - $(MAKE) -C examples distinstall -examples_zipinstall: - $(MAKE) -C examples zipinstall -examples_zipsourceinstall: - $(MAKE) -C examples zipsourceinstall -examples_zipexampleinstall: - $(MAKE) -C examples zipexampleinstall -examples_zipdistinstall: - $(MAKE) -C examples zipdistinstall -examples_clean: - $(MAKE) -C examples clean -examples_distclean: - $(MAKE) -C examples distclean -examples_cleanall: - $(MAKE) -C examples cleanall -examples_info: - $(MAKE) -C examples info -examples_makefiles: - $(MAKE) -C examples makefiles +units: examples: - $(MAKE) -C examples all -.PHONY: examples_all examples_debug examples_smart examples_release examples_units examples_examples examples_shared examples_install examples_sourceinstall examples_exampleinstall examples_distinstall examples_zipinstall examples_zipsourceinstall examples_zipexampleinstall examples_zipdistinstall examples_clean examples_distclean examples_cleanall examples_info examples_makefiles examples -endif -all: fpc_all -debug: fpc_debug -smart: fpc_smart -release: fpc_release -units: fpc_units -examples: fpc_examples -shared: fpc_shared -install: fpc_install +shared: sourceinstall: fpc_sourceinstall exampleinstall: fpc_exampleinstall -distinstall: fpc_distinstall zipinstall: fpc_zipinstall zipsourceinstall: fpc_zipsourceinstall zipexampleinstall: fpc_zipexampleinstall zipdistinstall: fpc_zipdistinstall -clean: fpc_clean $(addsuffix _clean,$(TARGET_EXAMPLEDIRS)) -distclean: fpc_distclean -cleanall: fpc_cleanall +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: units examples shared sourceinstall exampleinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info makefiles ifneq ($(wildcard fpcmake.loc),) include fpcmake.loc endif .NOTPARALLEL: -testlibuid$(EXEEXT): testlibuid.pp libuuid$(PPUEXT) +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif diff --git a/packages/uuid/Makefile.fpc b/packages/uuid/Makefile.fpc index cf3b166964..7af6c719b8 100644 --- a/packages/uuid/Makefile.fpc +++ b/packages/uuid/Makefile.fpc @@ -1,32 +1,76 @@ # -# Makefile.fpc for gdbm bindings +# Makefile.fpc for running fpmake # [package] name=uuid version=2.7.1 -[target] -units=macuuid libuuid -exampledirs=examples - [require] -package=rtl +packages=rtl fpmkunit [install] -examplesubdir=tests fpcpackage=y [default] fpcdir=../.. -[compiler] -includedir=src -sourcedir=src tests examples -unitdir=units/$(OS_TARGET) +[prerules] +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) +endif +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) +endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) [rules] .NOTPARALLEL: -#testuid$(EXEEXT): testuid.pp uuid$(PPUEXT) -testlibuid$(EXEEXT): testlibuid.pp libuuid$(PPUEXT) +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +# If no fpmake exists and (dist)clean is called, do not try to build fpmake, it will +# most often fail because the dependencies are cleared. +# In case of a clean, simply do nothing +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +# In case of a distclean, perform an 'old'-style distclean. This to avoid problems +# when the package is compiled using fpcmake prior to running this clean using fpmake +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +# distinstall also installs the example-sources +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif + diff --git a/packages/uuid/Makefile.fpc.fpcmake b/packages/uuid/Makefile.fpc.fpcmake new file mode 100644 index 0000000000..cf3b166964 --- /dev/null +++ b/packages/uuid/Makefile.fpc.fpcmake @@ -0,0 +1,32 @@ +# +# Makefile.fpc for gdbm bindings +# + +[package] +name=uuid +version=2.7.1 + +[target] +units=macuuid libuuid +exampledirs=examples + +[require] +package=rtl + +[install] +examplesubdir=tests +fpcpackage=y + +[default] +fpcdir=../.. + +[compiler] +includedir=src +sourcedir=src tests examples +unitdir=units/$(OS_TARGET) + +[rules] +.NOTPARALLEL: +#testuid$(EXEEXT): testuid.pp uuid$(PPUEXT) + +testlibuid$(EXEEXT): testlibuid.pp libuuid$(PPUEXT) diff --git a/packages/x11/Makefile b/packages/x11/Makefile index 113314caab..ac04569c09 100644 --- a/packages/x11/Makefile +++ b/packages/x11/Makefile @@ -1,5 +1,5 @@ # -# Don't edit, this file is generated by FPCMake Version 2.0.0 [2011/12/04] +# Don't edit, this file is generated by FPCMake Version 2.0.0 [2012/01/09] # 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 @@ -294,576 +294,15 @@ endif endif override PACKAGE_NAME=x11 override PACKAGE_VERSION=2.7.1 -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) override INSTALL_FPCPACKAGE=y -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_INCLUDEDIR+=src -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 -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),sparc-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_SOURCEDIR+=src tests -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_SOURCEDIR+=src tests -endif -override SHARED_BUILD=n -override SHARED_BUILD=n ifdef REQUIRE_UNITSDIR override UNITSDIR+=$(REQUIRE_UNITSDIR) endif @@ -1060,37 +499,6 @@ endif else CROSSBINDIR= endif -ifeq ($(OS_SOURCE),linux) -ifndef GCCLIBDIR -ifeq ($(CPU_TARGET),i386) -ifneq ($(findstring x86_64,$(shell uname -a)),) -ifeq ($(BINUTILSPREFIX),) -GCCLIBDIR:=$(shell dirname `gcc -m32 -print-libgcc-file-name`) -endif -endif -endif -ifeq ($(CPU_TARGET),powerpc64) -ifeq ($(BINUTILSPREFIX),) -GCCLIBDIR:=$(shell dirname `gcc -m64 -print-libgcc-file-name`) -endif -endif -endif -ifndef GCCLIBDIR -CROSSGCC=$(strip $(wildcard $(addsuffix /$(BINUTILSPREFIX)gcc$(SRCEXEEXT),$(SEARCHPATH)))) -ifneq ($(CROSSGCC),) -GCCLIBDIR:=$(shell dirname `$(CROSSGCC) -print-libgcc-file-name`) -endif -endif -ifndef OTHERLIBDIR -OTHERLIBDIR:=$(shell grep -v "^\#" /etc/ld.so.conf | awk '{ ORS=" "; print $1 }') -endif -endif -ifdef inUnix -ifeq ($(OS_SOURCE),netbsd) -OTHERLIBDIR+=/usr/pkg/lib -endif -export GCCLIBDIR OTHERLIB -endif BATCHEXT=.bat LOADEREXT=.as EXEEXT=.exe @@ -1479,25 +887,6 @@ DATESTR:=$(shell $(DATE) +%Y%m%d) else DATESTR= endif -ifndef UPXPROG -ifeq ($(OS_TARGET),go32v2) -UPXPROG:=1 -endif -ifeq ($(OS_TARGET),win32) -UPXPROG:= -endif -ifdef UPXPROG -UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH)))) -ifeq ($(UPXPROG),) -UPXPROG= -else -UPXPROG:=$(firstword $(UPXPROG)) -endif -else -UPXPROG= -endif -endif -export UPXPROG ZIPOPT=-9 ZIPEXT=.zip ifeq ($(USETAR),bz2) @@ -1507,195 +896,447 @@ else TAROPT=vz TAREXT=.tar.gz endif -override REQUIRE_PACKAGES=rtl +override REQUIRE_PACKAGES=rtl fpmkunit ifeq ($(FULL_TARGET),i386-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-go32v2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-win32) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-os2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-beos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-haiku) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-qnx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netware) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wdosx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-emx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-watcom) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netwlibc) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-nativent) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-iphonesim) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-atari) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-macos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-morphos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-wii) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-win64) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-gba) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-nds) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),avr-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),mipsel-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifdef REQUIRE_PACKAGES_RTL PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))) @@ -1735,6 +1376,158 @@ 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)))))) +ifneq ($(PACKAGEDIR_HASH),) +ifneq ($(wildcard $(PACKAGEDIR_HASH)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_HASH)/$(FPCMADE) +endif +else +PACKAGEDIR_HASH= +UNITDIR_HASH:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /hash/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_HASH),) +UNITDIR_HASH:=$(firstword $(UNITDIR_HASH)) +else +UNITDIR_HASH= +endif +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)))))) +ifneq ($(PACKAGEDIR_PASZLIB),) +ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE) +endif +else +PACKAGEDIR_PASZLIB= +UNITDIR_PASZLIB:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_PASZLIB),) +UNITDIR_PASZLIB:=$(firstword $(UNITDIR_PASZLIB)) +else +UNITDIR_PASZLIB= +endif +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)))))) +ifneq ($(PACKAGEDIR_FCL-PROCESS),) +ifneq ($(wildcard $(PACKAGEDIR_FCL-PROCESS)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FCL-PROCESS)/$(FPCMADE) +endif +else +PACKAGEDIR_FCL-PROCESS= +UNITDIR_FCL-PROCESS:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fcl-process/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FCL-PROCESS),) +UNITDIR_FCL-PROCESS:=$(firstword $(UNITDIR_FCL-PROCESS)) +else +UNITDIR_FCL-PROCESS= +endif +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 +ifdef REQUIRE_PACKAGES_FPMKUNIT +PACKAGEDIR_FPMKUNIT:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Makefile.fpc,$(PACKAGESDIR)))))) +ifneq ($(PACKAGEDIR_FPMKUNIT),) +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX)),) +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX) +else +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX) +else +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX) +else +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +endif +ifdef CHECKDEPEND +$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE): + $(MAKE) -C $(PACKAGEDIR_FPMKUNIT) $(FPCMADE) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE) +endif +else +PACKAGEDIR_FPMKUNIT= +UNITDIR_FPMKUNIT:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FPMKUNIT),) +UNITDIR_FPMKUNIT:=$(firstword $(UNITDIR_FPMKUNIT)) +else +UNITDIR_FPMKUNIT= +endif +endif +ifdef UNITDIR_FPMKUNIT +override COMPILER_UNITDIR+=$(UNITDIR_FPMKUNIT) +endif +ifdef UNITDIR_FPMAKE_FPMKUNIT +override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_FPMKUNIT) +endif +endif ifndef NOCPUDEF override FPCOPTDEF=$(ARCH) endif @@ -1751,12 +1544,16 @@ endif ifndef CROSSBOOTSTRAP ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-XP$(BINUTILSPREFIX) -override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) endif ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-Xr$(RLINKPATH) endif endif +ifndef CROSSCOMPILE +ifneq ($(BINUTILSPREFIX),) +override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) +endif +endif ifdef UNITDIR override FPCOPT+=$(addprefix -Fu,$(UNITDIR)) endif @@ -1856,12 +1653,6 @@ endif endif ifdef LINKSHARED endif -ifdef GCCLIBDIR -override FPCOPT+=-Fl$(GCCLIBDIR) -endif -ifdef OTHERLIBDIR -override FPCOPT+=$(addprefix -Fl,$(OTHERLIBDIR)) -endif ifdef OPT override FPCOPT+=$(OPT) endif @@ -1896,93 +1687,10 @@ EXECPPAS:=@$(PPAS) endif endif endif -.PHONY: fpc_units -ifneq ($(TARGET_UNITS)$(TARGET_IMPLICITUNITS),) -override ALLTARGET+=fpc_units -override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS)) -override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS)) -override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -endif -fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES) ifdef TARGET_RSTS override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS)) override CLEANRSTFILES+=$(RSTFILES) endif -.PHONY: fpc_all fpc_smart fpc_debug fpc_release fpc_shared -$(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET) - @$(ECHOREDIR) Compiled > $(FPCMADE) -fpc_all: $(FPCMADE) -fpc_smart: - $(MAKE) all LINKSMART=1 CREATESMART=1 -fpc_debug: - $(MAKE) all DEBUG=1 -fpc_release: - $(MAKE) all RELEASE=1 -.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res -$(COMPILER_UNITTARGETDIR): - $(MKDIRTREE) $(COMPILER_UNITTARGETDIR) -$(COMPILER_TARGETDIR): - $(MKDIRTREE) $(COMPILER_TARGETDIR) -%$(PPUEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(PPUEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.lpr - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.dpr - $(COMPILER) $< - $(EXECPPAS) -%.res: %.rc - windres -i $< -o $@ -vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.inc $(COMPILER_INCLUDEDIR) -vpath %$(OEXT) $(COMPILER_UNITTARGETDIR) -vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR) -.PHONY: fpc_shared -override INSTALLTARGET+=fpc_shared_install -ifndef SHARED_LIBVERSION -SHARED_LIBVERSION=$(FPC_VERSION) -endif -ifndef SHARED_LIBNAME -SHARED_LIBNAME=$(PACKAGE_NAME) -endif -ifndef SHARED_FULLNAME -SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSION)$(SHAREDLIBEXT) -endif -ifndef SHARED_LIBUNITS -SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS) -override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_LIBUNITS)) -endif -fpc_shared: -ifdef HASSHAREDLIB - $(MAKE) all CREATESHARED=1 LINKSHARED=1 CREATESMART=1 -ifneq ($(SHARED_BUILD),n) - $(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR) -endif -else - @$(ECHO) Shared Libraries not supported -endif -fpc_shared_install: -ifneq ($(SHARED_BUILD),n) -ifneq ($(SHARED_LIBUNITS),) -ifneq ($(wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),) - $(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INSTALL_SHAREDDIR) -endif -endif -endif .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall ifdef INSTALL_UNITS override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS)) @@ -2006,9 +1714,6 @@ endif fpc_install: all $(INSTALLTARGET) ifdef INSTALLEXEFILES $(MKDIR) $(INSTALL_BINDIR) -ifdef UPXPROG - -$(UPXPROG) $(INSTALLEXEFILES) -endif $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR) endif ifdef INSTALL_CREATEPACKAGEFPC @@ -2267,7 +1972,6 @@ fpc_baseinfo: @$(ECHO) Date...... $(DATE) @$(ECHO) FPCMake... $(FPCMAKE) @$(ECHO) PPUMove... $(PPUMOVE) - @$(ECHO) Upx....... $(UPXPROG) @$(ECHO) Zip....... $(ZIPPROG) @$(ECHO) @$(ECHO) == Object info == @@ -2324,28 +2028,59 @@ endif fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS)) fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2 fpc_makefiles: fpc_makefile fpc_makefile_dirs -all: fpc_all -debug: fpc_debug -smart: fpc_smart -release: fpc_release -units: fpc_units +units: examples: -shared: fpc_shared -install: fpc_install +shared: sourceinstall: fpc_sourceinstall exampleinstall: fpc_exampleinstall -distinstall: fpc_distinstall zipinstall: fpc_zipinstall zipsourceinstall: fpc_zipsourceinstall zipexampleinstall: fpc_zipexampleinstall zipdistinstall: fpc_zipdistinstall -clean: fpc_clean -distclean: fpc_distclean -cleanall: fpc_cleanall +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: units examples shared sourceinstall exampleinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info makefiles ifneq ($(wildcard fpcmake.loc),) include fpcmake.loc endif .NOTPARALLEL: +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif diff --git a/packages/x11/Makefile.fpc b/packages/x11/Makefile.fpc index 018e0794b9..c7bdf42bc4 100644 --- a/packages/x11/Makefile.fpc +++ b/packages/x11/Makefile.fpc @@ -1,16 +1,13 @@ # -# Makefile.fpc for X11 Bindings +# Makefile.fpc for running fpmake # [package] name=x11 version=2.7.1 -[target] -units=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode xft fontconfig - [require] -libc=y +packages=rtl fpmkunit [install] fpcpackage=y @@ -18,12 +15,62 @@ fpcpackage=y [default] fpcdir=../.. -[compiler] -includedir=src -sourcedir=src tests - -[shared] -build=n +[prerules] +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) +endif +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) +endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) [rules] .NOTPARALLEL: + +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +# If no fpmake exists and (dist)clean is called, do not try to build fpmake, it will +# most often fail because the dependencies are cleared. +# In case of a clean, simply do nothing +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +# In case of a distclean, perform an 'old'-style distclean. This to avoid problems +# when the package is compiled using fpcmake prior to running this clean using fpmake +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +# distinstall also installs the example-sources +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif + diff --git a/packages/x11/Makefile.fpc.fpcmake b/packages/x11/Makefile.fpc.fpcmake new file mode 100644 index 0000000000..018e0794b9 --- /dev/null +++ b/packages/x11/Makefile.fpc.fpcmake @@ -0,0 +1,29 @@ +# +# Makefile.fpc for X11 Bindings +# + +[package] +name=x11 +version=2.7.1 + +[target] +units=x xlib xutil xresource xcms xshm xrender keysym xi xkb xkblib xatom xinerama xv xvlib cursorfont xrandr xf86dga xf86vmode xft fontconfig + +[require] +libc=y + +[install] +fpcpackage=y + +[default] +fpcdir=../.. + +[compiler] +includedir=src +sourcedir=src tests + +[shared] +build=n + +[rules] +.NOTPARALLEL: diff --git a/packages/xforms/Makefile b/packages/xforms/Makefile index 4003463f89..311d101fba 100644 --- a/packages/xforms/Makefile +++ b/packages/xforms/Makefile @@ -1,5 +1,5 @@ # -# Don't edit, this file is generated by FPCMake Version 2.0.0 [2011/12/04] +# Don't edit, this file is generated by FPCMake Version 2.0.0 [2012/01/09] # 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 @@ -294,954 +294,20 @@ endif endif override PACKAGE_NAME=xforms override PACKAGE_VERSION=2.7.1 -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_PROGRAMS+=fd2pascal -endif -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_UNITS+=xforms +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_UNITS+=xforms -endif -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_EXAMPLEDIRS+=examples +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_EXAMPLEDIRS+=examples -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_EXAMPLEDIRS+=examples +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) +ifdef PACKAGEDIR_MAIN +COMPILER_TARGETDIR=$(PACKAGEDIR_MAIN)/bin/$(TARGETSUFFIX) +else +COMPILER_TARGETDIR=bin/$(TARGETSUFFIX) endif override INSTALL_FPCPACKAGE=y -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_INCLUDEDIR+=src -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 -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),sparc-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -override SHARED_BUILD=n -override SHARED_BUILD=n ifdef REQUIRE_UNITSDIR override UNITSDIR+=$(REQUIRE_UNITSDIR) endif @@ -1438,37 +504,6 @@ endif else CROSSBINDIR= endif -ifeq ($(OS_SOURCE),linux) -ifndef GCCLIBDIR -ifeq ($(CPU_TARGET),i386) -ifneq ($(findstring x86_64,$(shell uname -a)),) -ifeq ($(BINUTILSPREFIX),) -GCCLIBDIR:=$(shell dirname `gcc -m32 -print-libgcc-file-name`) -endif -endif -endif -ifeq ($(CPU_TARGET),powerpc64) -ifeq ($(BINUTILSPREFIX),) -GCCLIBDIR:=$(shell dirname `gcc -m64 -print-libgcc-file-name`) -endif -endif -endif -ifndef GCCLIBDIR -CROSSGCC=$(strip $(wildcard $(addsuffix /$(BINUTILSPREFIX)gcc$(SRCEXEEXT),$(SEARCHPATH)))) -ifneq ($(CROSSGCC),) -GCCLIBDIR:=$(shell dirname `$(CROSSGCC) -print-libgcc-file-name`) -endif -endif -ifndef OTHERLIBDIR -OTHERLIBDIR:=$(shell grep -v "^\#" /etc/ld.so.conf | awk '{ ORS=" "; print $1 }') -endif -endif -ifdef inUnix -ifeq ($(OS_SOURCE),netbsd) -OTHERLIBDIR+=/usr/pkg/lib -endif -export GCCLIBDIR OTHERLIB -endif BATCHEXT=.bat LOADEREXT=.as EXEEXT=.exe @@ -1857,25 +892,6 @@ DATESTR:=$(shell $(DATE) +%Y%m%d) else DATESTR= endif -ifndef UPXPROG -ifeq ($(OS_TARGET),go32v2) -UPXPROG:=1 -endif -ifeq ($(OS_TARGET),win32) -UPXPROG:= -endif -ifdef UPXPROG -UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH)))) -ifeq ($(UPXPROG),) -UPXPROG= -else -UPXPROG:=$(firstword $(UPXPROG)) -endif -else -UPXPROG= -endif -endif -export UPXPROG ZIPOPT=-9 ZIPEXT=.zip ifeq ($(USETAR),bz2) @@ -1885,258 +901,447 @@ else TAROPT=vz TAREXT=.tar.gz endif -override REQUIRE_PACKAGES=rtl x11 +override REQUIRE_PACKAGES=rtl fpmkunit ifeq ($(FULL_TARGET),i386-linux) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-go32v2) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-win32) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-os2) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-freebsd) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-beos) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-haiku) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netbsd) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-solaris) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-qnx) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netware) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-openbsd) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wdosx) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-darwin) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-emx) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-watcom) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netwlibc) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wince) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-embedded) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-symbian) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-nativent) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-iphonesim) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-linux) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-freebsd) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-netbsd) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-amiga) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-atari) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-openbsd) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-palmos) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-embedded) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-linux) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-netbsd) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-amiga) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-macos) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-darwin) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-morphos) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-embedded) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-wii) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-linux) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-netbsd) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-solaris) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-embedded) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-linux) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-freebsd) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-solaris) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-darwin) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-win64) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-embedded) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-linux) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-palmos) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-darwin) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-wince) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-gba) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-nds) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-embedded) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-symbian) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-linux) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-darwin) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-embedded) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),avr-embedded) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-linux) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-embedded) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),mipsel-linux) REQUIRE_PACKAGES_RTL=1 -REQUIRE_PACKAGES_X11=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifdef REQUIRE_PACKAGES_RTL PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))) @@ -2176,42 +1381,156 @@ ifdef UNITDIR_FPMAKE_RTL override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_RTL) endif endif -ifdef REQUIRE_PACKAGES_X11 -PACKAGEDIR_X11:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /x11/Makefile.fpc,$(PACKAGESDIR)))))) -ifneq ($(PACKAGEDIR_X11),) -ifneq ($(wildcard $(PACKAGEDIR_X11)/units/$(TARGETSUFFIX)),) -UNITDIR_X11=$(PACKAGEDIR_X11)/units/$(TARGETSUFFIX) +ifdef REQUIRE_PACKAGES_HASH +PACKAGEDIR_HASH:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /hash/Makefile.fpc,$(PACKAGESDIR)))))) +ifneq ($(PACKAGEDIR_HASH),) +ifneq ($(wildcard $(PACKAGEDIR_HASH)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_HASH)/$(FPCMADE) +endif +else +PACKAGEDIR_HASH= +UNITDIR_HASH:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /hash/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_HASH),) +UNITDIR_HASH:=$(firstword $(UNITDIR_HASH)) +else +UNITDIR_HASH= +endif +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)))))) +ifneq ($(PACKAGEDIR_PASZLIB),) +ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/units/$(TARGETSUFFIX)),) +UNITDIR_PASZLIB=$(PACKAGEDIR_PASZLIB)/units/$(TARGETSUFFIX) else -UNITDIR_X11=$(PACKAGEDIR_X11) +UNITDIR_PASZLIB=$(PACKAGEDIR_PASZLIB) endif -ifneq ($(wildcard $(PACKAGEDIR_X11)/units/$(SOURCESUFFIX)),) -UNITDIR_FPMAKE_X11=$(PACKAGEDIR_X11)/units/$(SOURCESUFFIX) +ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/units/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_PASZLIB=$(PACKAGEDIR_PASZLIB)/units/$(SOURCESUFFIX) else -ifneq ($(wildcard $(PACKAGEDIR_X11)/units_bs/$(SOURCESUFFIX)),) -UNITDIR_FPMAKE_X11=$(PACKAGEDIR_X11)/units_bs/$(SOURCESUFFIX) +ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/units_bs/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_PASZLIB=$(PACKAGEDIR_PASZLIB)/units_bs/$(SOURCESUFFIX) else -UNITDIR_FPMAKE_X11=$(PACKAGEDIR_X11) +UNITDIR_FPMAKE_PASZLIB=$(PACKAGEDIR_PASZLIB) endif endif ifdef CHECKDEPEND -$(PACKAGEDIR_X11)/$(FPCMADE): - $(MAKE) -C $(PACKAGEDIR_X11) $(FPCMADE) -override ALLDEPENDENCIES+=$(PACKAGEDIR_X11)/$(FPCMADE) +$(PACKAGEDIR_PASZLIB)/$(FPCMADE): + $(MAKE) -C $(PACKAGEDIR_PASZLIB) $(FPCMADE) +override ALLDEPENDENCIES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE) +endif +else +PACKAGEDIR_PASZLIB= +UNITDIR_PASZLIB:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_PASZLIB),) +UNITDIR_PASZLIB:=$(firstword $(UNITDIR_PASZLIB)) +else +UNITDIR_PASZLIB= +endif +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)))))) +ifneq ($(PACKAGEDIR_FCL-PROCESS),) +ifneq ($(wildcard $(PACKAGEDIR_FCL-PROCESS)/units/$(TARGETSUFFIX)),) +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 -PACKAGEDIR_X11= -UNITDIR_X11:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /x11/Package.fpc,$(UNITSDIR))))) -ifneq ($(UNITDIR_X11),) -UNITDIR_X11:=$(firstword $(UNITDIR_X11)) +ifneq ($(wildcard $(PACKAGEDIR_FCL-PROCESS)/units_bs/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FCL-PROCESS=$(PACKAGEDIR_FCL-PROCESS)/units_bs/$(SOURCESUFFIX) else -UNITDIR_X11= +UNITDIR_FPMAKE_FCL-PROCESS=$(PACKAGEDIR_FCL-PROCESS) endif endif -ifdef UNITDIR_X11 -override COMPILER_UNITDIR+=$(UNITDIR_X11) +ifdef CHECKDEPEND +$(PACKAGEDIR_FCL-PROCESS)/$(FPCMADE): + $(MAKE) -C $(PACKAGEDIR_FCL-PROCESS) $(FPCMADE) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FCL-PROCESS)/$(FPCMADE) +endif +else +PACKAGEDIR_FCL-PROCESS= +UNITDIR_FCL-PROCESS:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fcl-process/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FCL-PROCESS),) +UNITDIR_FCL-PROCESS:=$(firstword $(UNITDIR_FCL-PROCESS)) +else +UNITDIR_FCL-PROCESS= endif -ifdef UNITDIR_FPMAKE_X11 -override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_X11) +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 +ifdef REQUIRE_PACKAGES_FPMKUNIT +PACKAGEDIR_FPMKUNIT:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Makefile.fpc,$(PACKAGESDIR)))))) +ifneq ($(PACKAGEDIR_FPMKUNIT),) +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX)),) +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX) +else +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX) +else +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX) +else +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +endif +ifdef CHECKDEPEND +$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE): + $(MAKE) -C $(PACKAGEDIR_FPMKUNIT) $(FPCMADE) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE) +endif +else +PACKAGEDIR_FPMKUNIT= +UNITDIR_FPMKUNIT:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FPMKUNIT),) +UNITDIR_FPMKUNIT:=$(firstword $(UNITDIR_FPMKUNIT)) +else +UNITDIR_FPMKUNIT= +endif +endif +ifdef UNITDIR_FPMKUNIT +override COMPILER_UNITDIR+=$(UNITDIR_FPMKUNIT) +endif +ifdef UNITDIR_FPMAKE_FPMKUNIT +override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_FPMKUNIT) endif endif ifndef NOCPUDEF @@ -2230,12 +1549,16 @@ endif ifndef CROSSBOOTSTRAP ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-XP$(BINUTILSPREFIX) -override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) endif ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-Xr$(RLINKPATH) endif endif +ifndef CROSSCOMPILE +ifneq ($(BINUTILSPREFIX),) +override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) +endif +endif ifdef UNITDIR override FPCOPT+=$(addprefix -Fu,$(UNITDIR)) endif @@ -2335,12 +1658,6 @@ endif endif ifdef LINKSHARED endif -ifdef GCCLIBDIR -override FPCOPT+=-Fl$(GCCLIBDIR) -endif -ifdef OTHERLIBDIR -override FPCOPT+=$(addprefix -Fl,$(OTHERLIBDIR)) -endif ifdef OPT override FPCOPT+=$(OPT) endif @@ -2375,132 +1692,10 @@ EXECPPAS:=@$(PPAS) endif endif endif -.PHONY: fpc_units -ifneq ($(TARGET_UNITS)$(TARGET_IMPLICITUNITS),) -override ALLTARGET+=fpc_units -override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS)) -override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS)) -override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -endif -fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES) -.PHONY: fpc_exes -ifndef CROSSINSTALL -ifneq ($(TARGET_PROGRAMS),) -override EXEFILES=$(addsuffix $(EXEEXT),$(TARGET_PROGRAMS)) -override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS))) -override EXEDBGFILES:=$(addsuffix $(EXEDBGEXT),$(TARGET_PROGRAMS)) -override ALLTARGET+=fpc_exes -override INSTALLEXEFILES+=$(EXEFILES) -override CLEANEXEFILES+=$(EXEFILES) $(EXEOFILES) -override CLEANEXEDBGFILES+=$(EXEDBGFILES) -ifeq ($(OS_TARGET),os2) -override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_PROGRAMS)) -endif -ifeq ($(OS_TARGET),emx) -override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_PROGRAMS)) -endif -endif -endif -fpc_exes: $(COMPILER_TARGETDIR) $(COMPILER_UNITTARGETDIR) $(EXEFILES) ifdef TARGET_RSTS override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS)) override CLEANRSTFILES+=$(RSTFILES) endif -.PHONY: fpc_examples -ifneq ($(TARGET_EXAMPLES),) -HASEXAMPLES=1 -override EXAMPLESOURCEFILES:=$(wildcard $(addsuffix .pp,$(TARGET_EXAMPLES)) $(addsuffix .pas,$(TARGET_EXAMPLES)) $(addsuffix .lpr,$(TARGET_EXAMPLES)) $(addsuffix .dpr,$(TARGET_EXAMPLES))) -override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(TARGET_EXAMPLES)) -override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(TARGET_EXAMPLES)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES))) -override EXAMPLEDBGFILES:=$(addsuffix $(EXEDBGEXT),$(TARGET_EXAMPLES)) -override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES) -override CLEANEXEDBGFILES+=$(EXAMPLEDBGFILES) -ifeq ($(OS_TARGET),os2) -override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES)) -endif -ifeq ($(OS_TARGET),emx) -override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES)) -endif -endif -ifneq ($(TARGET_EXAMPLEDIRS),) -HASEXAMPLES=1 -endif -fpc_examples: all $(EXAMPLEFILES) $(addsuffix _all,$(TARGET_EXAMPLEDIRS)) -.PHONY: fpc_all fpc_smart fpc_debug fpc_release fpc_shared -$(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET) - @$(ECHOREDIR) Compiled > $(FPCMADE) -fpc_all: $(FPCMADE) -fpc_smart: - $(MAKE) all LINKSMART=1 CREATESMART=1 -fpc_debug: - $(MAKE) all DEBUG=1 -fpc_release: - $(MAKE) all RELEASE=1 -.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res -$(COMPILER_UNITTARGETDIR): - $(MKDIRTREE) $(COMPILER_UNITTARGETDIR) -$(COMPILER_TARGETDIR): - $(MKDIRTREE) $(COMPILER_TARGETDIR) -%$(PPUEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(PPUEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.lpr - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.dpr - $(COMPILER) $< - $(EXECPPAS) -%.res: %.rc - windres -i $< -o $@ -vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.inc $(COMPILER_INCLUDEDIR) -vpath %$(OEXT) $(COMPILER_UNITTARGETDIR) -vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR) -.PHONY: fpc_shared -override INSTALLTARGET+=fpc_shared_install -ifndef SHARED_LIBVERSION -SHARED_LIBVERSION=$(FPC_VERSION) -endif -ifndef SHARED_LIBNAME -SHARED_LIBNAME=$(PACKAGE_NAME) -endif -ifndef SHARED_FULLNAME -SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSION)$(SHAREDLIBEXT) -endif -ifndef SHARED_LIBUNITS -SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS) -override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_LIBUNITS)) -endif -fpc_shared: -ifdef HASSHAREDLIB - $(MAKE) all CREATESHARED=1 LINKSHARED=1 CREATESMART=1 -ifneq ($(SHARED_BUILD),n) - $(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR) -endif -else - @$(ECHO) Shared Libraries not supported -endif -fpc_shared_install: -ifneq ($(SHARED_BUILD),n) -ifneq ($(SHARED_LIBUNITS),) -ifneq ($(wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),) - $(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INSTALL_SHAREDDIR) -endif -endif -endif .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall ifdef INSTALL_UNITS override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS)) @@ -2524,9 +1719,6 @@ endif fpc_install: all $(INSTALLTARGET) ifdef INSTALLEXEFILES $(MKDIR) $(INSTALL_BINDIR) -ifdef UPXPROG - -$(UPXPROG) $(INSTALLEXEFILES) -endif $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR) endif ifdef INSTALL_CREATEPACKAGEFPC @@ -2785,7 +1977,6 @@ fpc_baseinfo: @$(ECHO) Date...... $(DATE) @$(ECHO) FPCMake... $(FPCMAKE) @$(ECHO) PPUMove... $(PPUMOVE) - @$(ECHO) Upx....... $(UPXPROG) @$(ECHO) Zip....... $(ZIPPROG) @$(ECHO) @$(ECHO) == Object info == @@ -2842,262 +2033,59 @@ endif fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS)) fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2 fpc_makefiles: fpc_makefile fpc_makefile_dirs -ifeq ($(FULL_TARGET),i386-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-go32v2) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-win32) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-os2) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-beos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-haiku) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-qnx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netware) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-openbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-wdosx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-emx) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-watcom) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-wince) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-symbian) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-nativent) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-amiga) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-atari) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-palmos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),m68k-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-macos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc-wii) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),sparc-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-win64) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-palmos) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-wince) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-gba) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-nds) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),arm-symbian) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),avr-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),armeb-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),armeb-embedded) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifeq ($(FULL_TARGET),mipsel-linux) -TARGET_EXAMPLEDIRS_EXAMPLES=1 -endif -ifdef TARGET_EXAMPLEDIRS_EXAMPLES -examples_all: - $(MAKE) -C examples all -examples_debug: - $(MAKE) -C examples debug -examples_smart: - $(MAKE) -C examples smart -examples_release: - $(MAKE) -C examples release -examples_units: - $(MAKE) -C examples units -examples_examples: - $(MAKE) -C examples examples -examples_shared: - $(MAKE) -C examples shared -examples_install: - $(MAKE) -C examples install -examples_sourceinstall: - $(MAKE) -C examples sourceinstall -examples_exampleinstall: - $(MAKE) -C examples exampleinstall -examples_distinstall: - $(MAKE) -C examples distinstall -examples_zipinstall: - $(MAKE) -C examples zipinstall -examples_zipsourceinstall: - $(MAKE) -C examples zipsourceinstall -examples_zipexampleinstall: - $(MAKE) -C examples zipexampleinstall -examples_zipdistinstall: - $(MAKE) -C examples zipdistinstall -examples_clean: - $(MAKE) -C examples clean -examples_distclean: - $(MAKE) -C examples distclean -examples_cleanall: - $(MAKE) -C examples cleanall -examples_info: - $(MAKE) -C examples info -examples_makefiles: - $(MAKE) -C examples makefiles +units: examples: - $(MAKE) -C examples all -.PHONY: examples_all examples_debug examples_smart examples_release examples_units examples_examples examples_shared examples_install examples_sourceinstall examples_exampleinstall examples_distinstall examples_zipinstall examples_zipsourceinstall examples_zipexampleinstall examples_zipdistinstall examples_clean examples_distclean examples_cleanall examples_info examples_makefiles examples -endif -all: fpc_all -debug: fpc_debug -smart: fpc_smart -release: fpc_release -units: fpc_units -examples: fpc_examples -shared: fpc_shared -install: fpc_install +shared: sourceinstall: fpc_sourceinstall exampleinstall: fpc_exampleinstall -distinstall: fpc_distinstall zipinstall: fpc_zipinstall zipsourceinstall: fpc_zipsourceinstall zipexampleinstall: fpc_zipexampleinstall zipdistinstall: fpc_zipdistinstall -clean: fpc_clean $(addsuffix _clean,$(TARGET_EXAMPLEDIRS)) -distclean: fpc_distclean -cleanall: fpc_cleanall +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: units examples shared sourceinstall exampleinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info makefiles ifneq ($(wildcard fpcmake.loc),) include fpcmake.loc endif .NOTPARALLEL: +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif diff --git a/packages/xforms/Makefile.fpc b/packages/xforms/Makefile.fpc index bf47dd0b13..fb59445fa7 100644 --- a/packages/xforms/Makefile.fpc +++ b/packages/xforms/Makefile.fpc @@ -1,19 +1,13 @@ # -# Makefile.fpc for Forms Bindings +# Makefile.fpc for running fpmake # [package] name=xforms version=2.7.1 -[target] -units=xforms -programs=fd2pascal -exampledirs=examples - [require] -packages=x11 -libc=y +packages=rtl fpmkunit [install] fpcpackage=y @@ -21,12 +15,69 @@ fpcpackage=y [default] fpcdir=../.. -[compiler] -includedir=src -sourcedir=src tests examples - -[shared] -build=n +[prerules] +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) +endif +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) +endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) +# By default COMPILER_TARGETDIR is set to '.'. This is passed in the -FE parameter to the compiler +# which leads to executables being placed into the wrong directory by the compiler. +ifdef PACKAGEDIR_MAIN +COMPILER_TARGETDIR=$(PACKAGEDIR_MAIN)/bin/$(TARGETSUFFIX) +else +COMPILER_TARGETDIR=bin/$(TARGETSUFFIX) +endif [rules] .NOTPARALLEL: + +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +# If no fpmake exists and (dist)clean is called, do not try to build fpmake, it will +# most often fail because the dependencies are cleared. +# In case of a clean, simply do nothing +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +# In case of a distclean, perform an 'old'-style distclean. This to avoid problems +# when the package is compiled using fpcmake prior to running this clean using fpmake +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +# distinstall also installs the example-sources +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif + diff --git a/packages/xforms/Makefile.fpc.fpcmake b/packages/xforms/Makefile.fpc.fpcmake new file mode 100644 index 0000000000..bf47dd0b13 --- /dev/null +++ b/packages/xforms/Makefile.fpc.fpcmake @@ -0,0 +1,32 @@ +# +# Makefile.fpc for Forms Bindings +# + +[package] +name=xforms +version=2.7.1 + +[target] +units=xforms +programs=fd2pascal +exampledirs=examples + +[require] +packages=x11 +libc=y + +[install] +fpcpackage=y + +[default] +fpcdir=../.. + +[compiler] +includedir=src +sourcedir=src tests examples + +[shared] +build=n + +[rules] +.NOTPARALLEL: diff --git a/packages/zorba/Makefile b/packages/zorba/Makefile index d172030ada..63db9ae1b2 100644 --- a/packages/zorba/Makefile +++ b/packages/zorba/Makefile @@ -1,5 +1,5 @@ # -# Don't edit, this file is generated by FPCMake Version 2.0.0 [2011/12/04] +# Don't edit, this file is generated by FPCMake Version 2.0.0 [2012/01/09] # 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 @@ -294,576 +294,15 @@ endif endif override PACKAGE_NAME=zorba override PACKAGE_VERSION=2.7.1 -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_UNITS+=xqc zorba zorbadyn +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),arm-nds) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_UNITS+=xqc zorba zorbadyn -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_UNITS+=xqc zorba zorbadyn +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) override INSTALL_FPCPACKAGE=y -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_INCLUDEDIR+=src -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 -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_INCLUDEDIR+=src -endif -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-nativent) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),i386-iphonesim) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc-wii) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),sparc-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-solaris) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_SOURCEDIR+=src tests examples -endif -ifeq ($(FULL_TARGET),mipsel-linux) -override COMPILER_SOURCEDIR+=src tests examples -endif -override SHARED_BUILD=n -override SHARED_BUILD=n ifdef REQUIRE_UNITSDIR override UNITSDIR+=$(REQUIRE_UNITSDIR) endif @@ -1448,25 +887,6 @@ DATESTR:=$(shell $(DATE) +%Y%m%d) else DATESTR= endif -ifndef UPXPROG -ifeq ($(OS_TARGET),go32v2) -UPXPROG:=1 -endif -ifeq ($(OS_TARGET),win32) -UPXPROG:= -endif -ifdef UPXPROG -UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH)))) -ifeq ($(UPXPROG),) -UPXPROG= -else -UPXPROG:=$(firstword $(UPXPROG)) -endif -else -UPXPROG= -endif -endif -export UPXPROG ZIPOPT=-9 ZIPEXT=.zip ifeq ($(USETAR),bz2) @@ -1476,195 +896,447 @@ else TAROPT=vz TAREXT=.tar.gz endif -override REQUIRE_PACKAGES=rtl +override REQUIRE_PACKAGES=rtl fpmkunit ifeq ($(FULL_TARGET),i386-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-go32v2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-win32) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-os2) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-beos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-haiku) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-qnx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netware) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wdosx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-emx) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-watcom) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-netwlibc) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-nativent) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),i386-iphonesim) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-atari) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-openbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),m68k-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-amiga) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-macos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-morphos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc-wii) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-netbsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),sparc-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-freebsd) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-solaris) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-win64) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),x86_64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-palmos) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-wince) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-gba) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-nds) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),arm-symbian) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-darwin) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),powerpc64-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),avr-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),armeb-embedded) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifeq ($(FULL_TARGET),mipsel-linux) REQUIRE_PACKAGES_RTL=1 +REQUIRE_PACKAGES_HASH=1 +REQUIRE_PACKAGES_PASZLIB=1 +REQUIRE_PACKAGES_FCL-PROCESS=1 +REQUIRE_PACKAGES_FPMKUNIT=1 endif ifdef REQUIRE_PACKAGES_RTL PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))) @@ -1704,6 +1376,158 @@ 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)))))) +ifneq ($(PACKAGEDIR_HASH),) +ifneq ($(wildcard $(PACKAGEDIR_HASH)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_HASH)/$(FPCMADE) +endif +else +PACKAGEDIR_HASH= +UNITDIR_HASH:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /hash/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_HASH),) +UNITDIR_HASH:=$(firstword $(UNITDIR_HASH)) +else +UNITDIR_HASH= +endif +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)))))) +ifneq ($(PACKAGEDIR_PASZLIB),) +ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE) +endif +else +PACKAGEDIR_PASZLIB= +UNITDIR_PASZLIB:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_PASZLIB),) +UNITDIR_PASZLIB:=$(firstword $(UNITDIR_PASZLIB)) +else +UNITDIR_PASZLIB= +endif +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)))))) +ifneq ($(PACKAGEDIR_FCL-PROCESS),) +ifneq ($(wildcard $(PACKAGEDIR_FCL-PROCESS)/units/$(TARGETSUFFIX)),) +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) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FCL-PROCESS)/$(FPCMADE) +endif +else +PACKAGEDIR_FCL-PROCESS= +UNITDIR_FCL-PROCESS:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fcl-process/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FCL-PROCESS),) +UNITDIR_FCL-PROCESS:=$(firstword $(UNITDIR_FCL-PROCESS)) +else +UNITDIR_FCL-PROCESS= +endif +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 +ifdef REQUIRE_PACKAGES_FPMKUNIT +PACKAGEDIR_FPMKUNIT:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Makefile.fpc,$(PACKAGESDIR)))))) +ifneq ($(PACKAGEDIR_FPMKUNIT),) +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX)),) +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX) +else +UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX) +else +ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX)),) +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX) +else +UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) +endif +endif +ifdef CHECKDEPEND +$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE): + $(MAKE) -C $(PACKAGEDIR_FPMKUNIT) $(FPCMADE) +override ALLDEPENDENCIES+=$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE) +endif +else +PACKAGEDIR_FPMKUNIT= +UNITDIR_FPMKUNIT:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Package.fpc,$(UNITSDIR))))) +ifneq ($(UNITDIR_FPMKUNIT),) +UNITDIR_FPMKUNIT:=$(firstword $(UNITDIR_FPMKUNIT)) +else +UNITDIR_FPMKUNIT= +endif +endif +ifdef UNITDIR_FPMKUNIT +override COMPILER_UNITDIR+=$(UNITDIR_FPMKUNIT) +endif +ifdef UNITDIR_FPMAKE_FPMKUNIT +override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_FPMKUNIT) +endif +endif ifndef NOCPUDEF override FPCOPTDEF=$(ARCH) endif @@ -1720,12 +1544,16 @@ endif ifndef CROSSBOOTSTRAP ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-XP$(BINUTILSPREFIX) -override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) endif ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-Xr$(RLINKPATH) endif endif +ifndef CROSSCOMPILE +ifneq ($(BINUTILSPREFIX),) +override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) +endif +endif ifdef UNITDIR override FPCOPT+=$(addprefix -Fu,$(UNITDIR)) endif @@ -1859,93 +1687,10 @@ EXECPPAS:=@$(PPAS) endif endif endif -.PHONY: fpc_units -ifneq ($(TARGET_UNITS)$(TARGET_IMPLICITUNITS),) -override ALLTARGET+=fpc_units -override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS)) -override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS)) -override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) -endif -fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES) ifdef TARGET_RSTS override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS)) override CLEANRSTFILES+=$(RSTFILES) endif -.PHONY: fpc_all fpc_smart fpc_debug fpc_release fpc_shared -$(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET) - @$(ECHOREDIR) Compiled > $(FPCMADE) -fpc_all: $(FPCMADE) -fpc_smart: - $(MAKE) all LINKSMART=1 CREATESMART=1 -fpc_debug: - $(MAKE) all DEBUG=1 -fpc_release: - $(MAKE) all RELEASE=1 -.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res -$(COMPILER_UNITTARGETDIR): - $(MKDIRTREE) $(COMPILER_UNITTARGETDIR) -$(COMPILER_TARGETDIR): - $(MKDIRTREE) $(COMPILER_TARGETDIR) -%$(PPUEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(PPUEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pp - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.pas - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.lpr - $(COMPILER) $< - $(EXECPPAS) -%$(EXEEXT): %.dpr - $(COMPILER) $< - $(EXECPPAS) -%.res: %.rc - windres -i $< -o $@ -vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) -vpath %.inc $(COMPILER_INCLUDEDIR) -vpath %$(OEXT) $(COMPILER_UNITTARGETDIR) -vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR) -.PHONY: fpc_shared -override INSTALLTARGET+=fpc_shared_install -ifndef SHARED_LIBVERSION -SHARED_LIBVERSION=$(FPC_VERSION) -endif -ifndef SHARED_LIBNAME -SHARED_LIBNAME=$(PACKAGE_NAME) -endif -ifndef SHARED_FULLNAME -SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSION)$(SHAREDLIBEXT) -endif -ifndef SHARED_LIBUNITS -SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS) -override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_LIBUNITS)) -endif -fpc_shared: -ifdef HASSHAREDLIB - $(MAKE) all CREATESHARED=1 LINKSHARED=1 CREATESMART=1 -ifneq ($(SHARED_BUILD),n) - $(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR) -endif -else - @$(ECHO) Shared Libraries not supported -endif -fpc_shared_install: -ifneq ($(SHARED_BUILD),n) -ifneq ($(SHARED_LIBUNITS),) -ifneq ($(wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),) - $(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INSTALL_SHAREDDIR) -endif -endif -endif .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall ifdef INSTALL_UNITS override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS)) @@ -1969,9 +1714,6 @@ endif fpc_install: all $(INSTALLTARGET) ifdef INSTALLEXEFILES $(MKDIR) $(INSTALL_BINDIR) -ifdef UPXPROG - -$(UPXPROG) $(INSTALLEXEFILES) -endif $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR) endif ifdef INSTALL_CREATEPACKAGEFPC @@ -2230,7 +1972,6 @@ fpc_baseinfo: @$(ECHO) Date...... $(DATE) @$(ECHO) FPCMake... $(FPCMAKE) @$(ECHO) PPUMove... $(PPUMOVE) - @$(ECHO) Upx....... $(UPXPROG) @$(ECHO) Zip....... $(ZIPPROG) @$(ECHO) @$(ECHO) == Object info == @@ -2287,28 +2028,59 @@ endif fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS)) fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2 fpc_makefiles: fpc_makefile fpc_makefile_dirs -all: fpc_all -debug: fpc_debug -smart: fpc_smart -release: fpc_release -units: fpc_units +units: examples: -shared: fpc_shared -install: fpc_install +shared: sourceinstall: fpc_sourceinstall exampleinstall: fpc_exampleinstall -distinstall: fpc_distinstall zipinstall: fpc_zipinstall zipsourceinstall: fpc_zipsourceinstall zipexampleinstall: fpc_zipexampleinstall zipdistinstall: fpc_zipdistinstall -clean: fpc_clean -distclean: fpc_distclean -cleanall: fpc_cleanall +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: units examples shared sourceinstall exampleinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info makefiles ifneq ($(wildcard fpcmake.loc),) include fpcmake.loc endif .NOTPARALLEL: +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif diff --git a/packages/zorba/Makefile.fpc b/packages/zorba/Makefile.fpc index c546e88b91..170806bbe5 100644 --- a/packages/zorba/Makefile.fpc +++ b/packages/zorba/Makefile.fpc @@ -1,15 +1,13 @@ # -# Makefile.fpc for sqlite implementation +# Makefile.fpc for running fpmake # [package] name=zorba version=2.7.1 -[target] -units=xqc zorba zorbadyn - [require] +packages=rtl fpmkunit [install] fpcpackage=y @@ -17,13 +15,62 @@ fpcpackage=y [default] fpcdir=../.. -[compiler] -includedir=src -sourcedir=src tests examples - -[shared] -build=n +[prerules] +FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) +ifdef OS_TARGET +FPC_TARGETOPT+=--os=$(OS_TARGET) +endif +ifdef CPU_TARGET +FPC_TARGETOPT+=--cpu=$(CPU_TARGET) +endif +LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) [rules] .NOTPARALLEL: +fpmake: fpmake.pp + $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) +all: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu +smart: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX +release: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE +debug: fpmake + $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG +# If no fpmake exists and (dist)clean is called, do not try to build fpmake, it will +# most often fail because the dependencies are cleared. +# In case of a clean, simply do nothing +ifeq ($(FPMAKE_BIN_CLEAN),) +clean: +else +clean: + $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif +# In case of a distclean, perform an 'old'-style distclean. This to avoid problems +# when the package is compiled using fpcmake prior to running this clean using fpmake +ifeq ($(FPMAKE_BIN_CLEAN),) +distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall +else +distclean: +ifdef inUnix + { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; } +else + $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) +endif + -$(DEL) $(LOCALFPMAKE) +endif +install: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) +endif +# distinstall also installs the example-sources +distinstall: fpmake +ifdef UNIXHier + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie +else + $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie +endif + diff --git a/packages/zorba/Makefile.fpc.fpcmake b/packages/zorba/Makefile.fpc.fpcmake new file mode 100644 index 0000000000..c546e88b91 --- /dev/null +++ b/packages/zorba/Makefile.fpc.fpcmake @@ -0,0 +1,29 @@ +# +# Makefile.fpc for sqlite implementation +# + +[package] +name=zorba +version=2.7.1 + +[target] +units=xqc zorba zorbadyn + +[require] + +[install] +fpcpackage=y + +[default] +fpcdir=../.. + +[compiler] +includedir=src +sourcedir=src tests examples + +[shared] +build=n + +[rules] +.NOTPARALLEL: + |