فهرست منبع

+ added package names so Makefile (re)generation works

git-svn-id: trunk@16064 -
Jonas Maebe 15 سال پیش
والد
کامیت
15cce57139

+ 52 - 417
packages/libgbafpc/Makefile

@@ -1,10 +1,10 @@
 #
-# Don't edit, this file is generated by FPCMake Version 2.0.0 [2009/08/02]
+# Don't edit, this file is generated by FPCMake Version 2.0.0 [2010/09/27]
 #
 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 m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-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
+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 m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-solaris x86_64-darwin x86_64-win64 x86_64-embedded arm-linux arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian powerpc64-linux powerpc64-darwin powerpc64-embedded avr-embedded armeb-linux armeb-embedded mipsel-linux
 BSDs = freebsd netbsd openbsd darwin
-UNIXs = linux $(BSDs) solaris qnx
+UNIXs = linux $(BSDs) solaris qnx haiku
 LIMIT83fs = go32v2 os2 emx watcom
 OSNeedsComspecToRunBatch = go32v2 watcom
 FORCE:
@@ -267,7 +267,7 @@ UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
 endif
 PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages $(FPCDIR)/packages/base $(FPCDIR)/packages/extra)
 override PACKAGE_NAME=libgbafpc
-override PACKAGE_VERSION=2.5.1
+override PACKAGE_VERSION=2.4.0
 BINUTILSPREFIX=arm-eabi-
 ifeq ($(FULL_TARGET),i386-linux)
 override TARGET_UNITS+=gba maxmod
@@ -329,6 +329,9 @@ endif
 ifeq ($(FULL_TARGET),i386-symbian)
 override TARGET_UNITS+=gba maxmod
 endif
+ifeq ($(FULL_TARGET),i386-nativent)
+override TARGET_UNITS+=gba maxmod
+endif
 ifeq ($(FULL_TARGET),m68k-linux)
 override TARGET_UNITS+=gba maxmod
 endif
@@ -392,6 +395,9 @@ endif
 ifeq ($(FULL_TARGET),x86_64-freebsd)
 override TARGET_UNITS+=gba maxmod
 endif
+ifeq ($(FULL_TARGET),x86_64-solaris)
+override TARGET_UNITS+=gba maxmod
+endif
 ifeq ($(FULL_TARGET),x86_64-darwin)
 override TARGET_UNITS+=gba maxmod
 endif
@@ -443,6 +449,9 @@ endif
 ifeq ($(FULL_TARGET),armeb-embedded)
 override TARGET_UNITS+=gba maxmod
 endif
+ifeq ($(FULL_TARGET),mipsel-linux)
+override TARGET_UNITS+=gba maxmod
+endif
 ifeq ($(FULL_TARGET),i386-linux)
 override TARGET_LOADERS+=core_asm
 endif
@@ -503,6 +512,9 @@ endif
 ifeq ($(FULL_TARGET),i386-symbian)
 override TARGET_LOADERS+=core_asm
 endif
+ifeq ($(FULL_TARGET),i386-nativent)
+override TARGET_LOADERS+=core_asm
+endif
 ifeq ($(FULL_TARGET),m68k-linux)
 override TARGET_LOADERS+=core_asm
 endif
@@ -566,6 +578,9 @@ endif
 ifeq ($(FULL_TARGET),x86_64-freebsd)
 override TARGET_LOADERS+=core_asm
 endif
+ifeq ($(FULL_TARGET),x86_64-solaris)
+override TARGET_LOADERS+=core_asm
+endif
 ifeq ($(FULL_TARGET),x86_64-darwin)
 override TARGET_LOADERS+=core_asm
 endif
@@ -617,179 +632,8 @@ endif
 ifeq ($(FULL_TARGET),armeb-embedded)
 override TARGET_LOADERS+=core_asm
 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),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),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-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
+ifeq ($(FULL_TARGET),mipsel-linux)
+override TARGET_LOADERS+=core_asm
 endif
 override INSTALL_FPCPACKAGE=y
 ifeq ($(FULL_TARGET),i386-linux)
@@ -852,6 +696,9 @@ endif
 ifeq ($(FULL_TARGET),i386-symbian)
 override COMPILER_INCLUDEDIR+=src src/maxmod
 endif
+ifeq ($(FULL_TARGET),i386-nativent)
+override COMPILER_INCLUDEDIR+=src src/maxmod
+endif
 ifeq ($(FULL_TARGET),m68k-linux)
 override COMPILER_INCLUDEDIR+=src src/maxmod
 endif
@@ -915,6 +762,9 @@ endif
 ifeq ($(FULL_TARGET),x86_64-freebsd)
 override COMPILER_INCLUDEDIR+=src src/maxmod
 endif
+ifeq ($(FULL_TARGET),x86_64-solaris)
+override COMPILER_INCLUDEDIR+=src src/maxmod
+endif
 ifeq ($(FULL_TARGET),x86_64-darwin)
 override COMPILER_INCLUDEDIR+=src src/maxmod
 endif
@@ -966,6 +816,9 @@ endif
 ifeq ($(FULL_TARGET),armeb-embedded)
 override COMPILER_INCLUDEDIR+=src src/maxmod
 endif
+ifeq ($(FULL_TARGET),mipsel-linux)
+override COMPILER_INCLUDEDIR+=src src/maxmod
+endif
 ifeq ($(FULL_TARGET),i386-linux)
 override COMPILER_SOURCEDIR+=src tests
 endif
@@ -1026,6 +879,9 @@ 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),m68k-linux)
 override COMPILER_SOURCEDIR+=src tests
 endif
@@ -1089,6 +945,9 @@ 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
@@ -1140,6 +999,9 @@ 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
@@ -1482,6 +1344,10 @@ ifeq ($(OS_TARGET),symbian)
 SHAREDLIBEXT=.dll
 SHORTSUFFIX=symbian
 endif
+ifeq ($(OS_TARGET),NativeNT)
+SHAREDLIBEXT=.dll
+SHORTSUFFIX=nativent
+endif
 else
 ifeq ($(OS_TARGET),go32v1)
 PPUEXT=.pp1
@@ -2099,24 +1965,6 @@ 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 CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES)
-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)
@@ -2306,7 +2154,7 @@ ZIPCMD_CDPACK:=cd $(subst /,$(ZIPPATHSEP),$(PACKDIR))
 ZIPCMD_CDBASE:=cd $(subst /,$(ZIPPATHSEP),$(BASEDIR))
 ifdef USETAR
 ZIPDESTFILE:=$(DIST_DESTDIR)/$(FULLZIPNAME)$(TAREXT)
-ZIPCMD_ZIP:=$(TARPROG) cf$(TAROPT) $(ZIPDESTFILE) *
+ZIPCMD_ZIP:=$(TARPROG) c$(TAROPT)f $(ZIPDESTFILE) *
 else
 ZIPDESTFILE:=$(DIST_DESTDIR)/$(FULLZIPNAME)$(ZIPEXT)
 ZIPCMD_ZIP:=$(subst /,$(ZIPPATHSEP),$(ZIPPROG)) -Dr $(ZIPOPT) $(ZIPDESTFILE) *
@@ -2351,6 +2199,9 @@ fpc_zipdistinstall:
 ifdef EXEFILES
 override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES))
 endif
+ifdef CLEAN_PROGRAMS
+override CLEANEXEFILES+=$(addprefix $(TARGETDIRPREFIX),$(addsuffix $(EXEEXT), $(CLEAN_PROGRAMS)))
+endif
 ifdef CLEAN_UNITS
 override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
 endif
@@ -2397,6 +2248,9 @@ endif
 ifdef CLEANRSTFILES
 	-$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
 endif
+endif
+ifdef CLEAN_FILES
+	-$(DEL) $(CLEAN_FILES)
 endif
 	-$(DELTREE) units
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
@@ -2520,231 +2374,12 @@ 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),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),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-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
-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
-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
+examples:
 shared: fpc_shared
 install: fpc_install
 sourceinstall: fpc_sourceinstall
@@ -2754,7 +2389,7 @@ zipinstall: fpc_zipinstall
 zipsourceinstall: fpc_zipsourceinstall
 zipexampleinstall: fpc_zipexampleinstall
 zipdistinstall: fpc_zipdistinstall
-clean: fpc_clean $(addsuffix _clean,$(TARGET_EXAMPLEDIRS))
+clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info

+ 1 - 0
packages/libgbafpc/Makefile.fpc

@@ -3,6 +3,7 @@
 #
 
 [package]
+name=libgbafpc
 version=2.4.0
 
 [target]

+ 207 - 12
packages/libgbafpc/examples/audio/Makefile

@@ -1,10 +1,10 @@
 #
-# Don't edit, this file is generated by FPCMake Version 2.0.0 [2009/08/02]
+# Don't edit, this file is generated by FPCMake Version 2.0.0 [2010/09/27]
 #
 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 m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-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
+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 m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-solaris x86_64-darwin x86_64-win64 x86_64-embedded arm-linux arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian powerpc64-linux powerpc64-darwin powerpc64-embedded avr-embedded armeb-linux armeb-embedded mipsel-linux
 BSDs = freebsd netbsd openbsd darwin
-UNIXs = linux $(BSDs) solaris qnx
+UNIXs = linux $(BSDs) solaris qnx haiku
 LIMIT83fs = go32v2 os2 emx watcom
 OSNeedsComspecToRunBatch = go32v2 watcom
 FORCE:
@@ -264,6 +264,8 @@ ifeq ($(UNITSDIR),)
 UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
 endif
 PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages $(FPCDIR)/packages/base $(FPCDIR)/packages/extra)
+override PACKAGE_NAME=libgbafpc-audio-examples
+override PACKAGE_VERSION=2.4.0
 ifeq ($(FULL_TARGET),i386-linux)
 override TARGET_DIRS+=PlayBoyScout
 endif
@@ -324,6 +326,9 @@ endif
 ifeq ($(FULL_TARGET),i386-symbian)
 override TARGET_DIRS+=PlayBoyScout
 endif
+ifeq ($(FULL_TARGET),i386-nativent)
+override TARGET_DIRS+=PlayBoyScout
+endif
 ifeq ($(FULL_TARGET),m68k-linux)
 override TARGET_DIRS+=PlayBoyScout
 endif
@@ -387,6 +392,9 @@ endif
 ifeq ($(FULL_TARGET),x86_64-freebsd)
 override TARGET_DIRS+=PlayBoyScout
 endif
+ifeq ($(FULL_TARGET),x86_64-solaris)
+override TARGET_DIRS+=PlayBoyScout
+endif
 ifeq ($(FULL_TARGET),x86_64-darwin)
 override TARGET_DIRS+=PlayBoyScout
 endif
@@ -438,6 +446,9 @@ endif
 ifeq ($(FULL_TARGET),armeb-embedded)
 override TARGET_DIRS+=PlayBoyScout
 endif
+ifeq ($(FULL_TARGET),mipsel-linux)
+override TARGET_DIRS+=PlayBoyScout
+endif
 override INSTALL_FPCPACKAGE=y
 ifdef REQUIRE_UNITSDIR
 override UNITSDIR+=$(REQUIRE_UNITSDIR)
@@ -781,6 +792,10 @@ ifeq ($(OS_TARGET),symbian)
 SHAREDLIBEXT=.dll
 SHORTSUFFIX=symbian
 endif
+ifeq ($(OS_TARGET),NativeNT)
+SHAREDLIBEXT=.dll
+SHORTSUFFIX=nativent
+endif
 else
 ifeq ($(OS_TARGET),go32v1)
 PPUEXT=.pp1
@@ -1266,6 +1281,9 @@ endif
 ifeq ($(FULL_TARGET),i386-symbian)
 REQUIRE_PACKAGES_LIBGBAFPC=1
 endif
+ifeq ($(FULL_TARGET),i386-nativent)
+REQUIRE_PACKAGES_LIBGBAFPC=1
+endif
 ifeq ($(FULL_TARGET),m68k-linux)
 REQUIRE_PACKAGES_LIBGBAFPC=1
 endif
@@ -1329,6 +1347,9 @@ endif
 ifeq ($(FULL_TARGET),x86_64-freebsd)
 REQUIRE_PACKAGES_LIBGBAFPC=1
 endif
+ifeq ($(FULL_TARGET),x86_64-solaris)
+REQUIRE_PACKAGES_LIBGBAFPC=1
+endif
 ifeq ($(FULL_TARGET),x86_64-darwin)
 REQUIRE_PACKAGES_LIBGBAFPC=1
 endif
@@ -1380,6 +1401,9 @@ endif
 ifeq ($(FULL_TARGET),armeb-embedded)
 REQUIRE_PACKAGES_LIBGBAFPC=1
 endif
+ifeq ($(FULL_TARGET),mipsel-linux)
+REQUIRE_PACKAGES_LIBGBAFPC=1
+endif
 ifdef REQUIRE_PACKAGES_LIBGBAFPC
 PACKAGEDIR_LIBGBAFPC:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /libgbafpc/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_LIBGBAFPC),)
@@ -1563,10 +1587,169 @@ ifdef TARGET_RSTS
 override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))
 override CLEANRSTFILES+=$(RSTFILES)
 endif
+.PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall
+ifdef INSTALL_UNITS
+override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS))
+endif
+ifdef INSTALL_BUILDUNIT
+override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPPUFILES))
+endif
+ifdef INSTALLPPUFILES
+override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
+ifneq ($(UNITTARGETDIRPREFIX),)
+override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPULINKFILES))))
+endif
+override INSTALL_CREATEPACKAGEFPC=1
+endif
+ifdef INSTALLEXEFILES
+ifneq ($(TARGETDIRPREFIX),)
+override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(notdir $(INSTALLEXEFILES)))
+endif
+endif
+fpc_install: all $(INSTALLTARGET)
+ifdef INSTALLEXEFILES
+	$(MKDIR) $(INSTALL_BINDIR)
+ifdef UPXPROG
+	-$(UPXPROG) $(INSTALLEXEFILES)
+endif
+	$(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR)
+endif
+ifdef INSTALL_CREATEPACKAGEFPC
+ifdef FPCMAKE
+ifdef PACKAGE_VERSION
+ifneq ($(wildcard Makefile.fpc),)
+	$(FPCMAKE) -p -T$(CPU_TARGET)-$(OS_TARGET) Makefile.fpc
+	$(MKDIR) $(INSTALL_UNITDIR)
+	$(INSTALL) Package.fpc $(INSTALL_UNITDIR)
+endif
+endif
+endif
+endif
+ifdef INSTALLPPUFILES
+	$(MKDIR) $(INSTALL_UNITDIR)
+	$(INSTALL) $(INSTALLPPUFILES) $(INSTALL_UNITDIR)
+ifneq ($(INSTALLPPULINKFILES),)
+	$(INSTALL) $(INSTALLPPULINKFILES) $(INSTALL_UNITDIR)
+endif
+ifneq ($(wildcard $(LIB_FULLNAME)),)
+	$(MKDIR) $(INSTALL_LIBDIR)
+	$(INSTALL) $(LIB_FULLNAME) $(INSTALL_LIBDIR)
+ifdef inUnix
+	ln -sf $(LIB_FULLNAME) $(INSTALL_LIBDIR)/$(LIB_NAME)
+endif
+endif
+endif
+ifdef INSTALL_FILES
+	$(MKDIR) $(INSTALL_DATADIR)
+	$(INSTALL) $(INSTALL_FILES) $(INSTALL_DATADIR)
+endif
+fpc_sourceinstall: distclean
+	$(MKDIR) $(INSTALL_SOURCEDIR)
+	$(COPYTREE) $(BASEDIR)/* $(INSTALL_SOURCEDIR)
+fpc_exampleinstall: $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS))
+ifdef HASEXAMPLES
+	$(MKDIR) $(INSTALL_EXAMPLEDIR)
+endif
+ifdef EXAMPLESOURCEFILES
+	$(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR)
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR)
+endif
+.PHONY: fpc_distinstall
+fpc_distinstall: install exampleinstall
+.PHONY: fpc_zipinstall fpc_zipsourceinstall fpc_zipexampleinstall
+ifndef PACKDIR
+ifndef inUnix
+PACKDIR=$(BASEDIR)/../fpc-pack
+else
+PACKDIR=/tmp/fpc-pack
+endif
+endif
+ifndef ZIPNAME
+ifdef DIST_ZIPNAME
+ZIPNAME=$(DIST_ZIPNAME)
+else
+ZIPNAME=$(PACKAGE_NAME)
+endif
+endif
+ifndef FULLZIPNAME
+FULLZIPNAME=$(ZIPCROSSPREFIX)$(ZIPPREFIX)$(ZIPNAME)$(ZIPSUFFIX)
+endif
+ifndef ZIPTARGET
+ifdef DIST_ZIPTARGET
+ZIPTARGET=DIST_ZIPTARGET
+else
+ZIPTARGET=install
+endif
+endif
+ifndef USEZIP
+ifdef inUnix
+USETAR=1
+endif
+endif
+ifndef inUnix
+USEZIPWRAPPER=1
+endif
+ifdef USEZIPWRAPPER
+ZIPPATHSEP=$(PATHSEP)
+ZIPWRAPPER=$(subst /,$(PATHSEP),$(DIST_DESTDIR)/fpczip$(SRCBATCHEXT))
+else
+ZIPPATHSEP=/
+endif
+ZIPCMD_CDPACK:=cd $(subst /,$(ZIPPATHSEP),$(PACKDIR))
+ZIPCMD_CDBASE:=cd $(subst /,$(ZIPPATHSEP),$(BASEDIR))
+ifdef USETAR
+ZIPDESTFILE:=$(DIST_DESTDIR)/$(FULLZIPNAME)$(TAREXT)
+ZIPCMD_ZIP:=$(TARPROG) c$(TAROPT)f $(ZIPDESTFILE) *
+else
+ZIPDESTFILE:=$(DIST_DESTDIR)/$(FULLZIPNAME)$(ZIPEXT)
+ZIPCMD_ZIP:=$(subst /,$(ZIPPATHSEP),$(ZIPPROG)) -Dr $(ZIPOPT) $(ZIPDESTFILE) *
+endif
+fpc_zipinstall:
+	$(MAKE) $(ZIPTARGET) INSTALL_PREFIX=$(PACKDIR) ZIPINSTALL=1
+	$(MKDIR) $(DIST_DESTDIR)
+	$(DEL) $(ZIPDESTFILE)
+ifdef USEZIPWRAPPER
+ifneq ($(ECHOREDIR),echo)
+	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDPACK))" > $(ZIPWRAPPER)
+	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_ZIP))" >> $(ZIPWRAPPER)
+	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDBASE))" >> $(ZIPWRAPPER)
+else
+	echo $(ZIPCMD_CDPACK) > $(ZIPWRAPPER)
+	echo $(ZIPCMD_ZIP) >> $(ZIPWRAPPER)
+	echo $(ZIPCMD_CDBASE) >> $(ZIPWRAPPER)
+endif
+ifdef inUnix
+	/bin/sh $(ZIPWRAPPER)
+else
+ifdef RUNBATCH
+	$(RUNBATCH) $(ZIPWRAPPER)
+else
+	$(ZIPWRAPPER)
+endif
+endif
+	$(DEL) $(ZIPWRAPPER)
+else
+	$(ZIPCMD_CDPACK) ; $(ZIPCMD_ZIP) ; $(ZIPCMD_CDBASE)
+endif
+	$(DELTREE) $(PACKDIR)
+fpc_zipsourceinstall:
+	$(MAKE) fpc_zipinstall ZIPTARGET=sourceinstall ZIPSUFFIX=$(ZIPSOURCESUFFIX)
+fpc_zipexampleinstall:
+ifdef HASEXAMPLES
+	$(MAKE) fpc_zipinstall ZIPTARGET=exampleinstall ZIPSUFFIX=$(ZIPEXAMPLESUFFIX)
+endif
+fpc_zipdistinstall:
+	$(MAKE) fpc_zipinstall ZIPTARGET=distinstall
 .PHONY: fpc_clean fpc_cleanall fpc_distclean
 ifdef EXEFILES
 override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES))
 endif
+ifdef CLEAN_PROGRAMS
+override CLEANEXEFILES+=$(addprefix $(TARGETDIRPREFIX),$(addsuffix $(EXEEXT), $(CLEAN_PROGRAMS)))
+endif
 ifdef CLEAN_UNITS
 override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
 endif
@@ -1613,6 +1796,9 @@ endif
 ifdef CLEANRSTFILES
 	-$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
 endif
+endif
+ifdef CLEAN_FILES
+	-$(DEL) $(CLEAN_FILES)
 endif
 	-$(DELTREE) units
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
@@ -1796,6 +1982,9 @@ endif
 ifeq ($(FULL_TARGET),i386-symbian)
 TARGET_DIRS_PLAYBOYSCOUT=1
 endif
+ifeq ($(FULL_TARGET),i386-nativent)
+TARGET_DIRS_PLAYBOYSCOUT=1
+endif
 ifeq ($(FULL_TARGET),m68k-linux)
 TARGET_DIRS_PLAYBOYSCOUT=1
 endif
@@ -1859,6 +2048,9 @@ endif
 ifeq ($(FULL_TARGET),x86_64-freebsd)
 TARGET_DIRS_PLAYBOYSCOUT=1
 endif
+ifeq ($(FULL_TARGET),x86_64-solaris)
+TARGET_DIRS_PLAYBOYSCOUT=1
+endif
 ifeq ($(FULL_TARGET),x86_64-darwin)
 TARGET_DIRS_PLAYBOYSCOUT=1
 endif
@@ -1910,6 +2102,9 @@ endif
 ifeq ($(FULL_TARGET),armeb-embedded)
 TARGET_DIRS_PLAYBOYSCOUT=1
 endif
+ifeq ($(FULL_TARGET),mipsel-linux)
+TARGET_DIRS_PLAYBOYSCOUT=1
+endif
 ifdef TARGET_DIRS_PLAYBOYSCOUT
 PlayBoyScout_all:
 	$(MAKE) -C PlayBoyScout all
@@ -1962,19 +2157,19 @@ release: $(addsuffix _release,$(TARGET_DIRS))
 units: $(addsuffix _units,$(TARGET_DIRS))
 examples: $(addsuffix _examples,$(TARGET_DIRS))
 shared: $(addsuffix _shared,$(TARGET_DIRS))
-install: $(addsuffix _install,$(TARGET_DIRS))
-sourceinstall: $(addsuffix _sourceinstall,$(TARGET_DIRS))
-exampleinstall: $(addsuffix _exampleinstall,$(TARGET_DIRS))
-distinstall: $(addsuffix _distinstall,$(TARGET_DIRS))
-zipinstall: $(addsuffix _zipinstall,$(TARGET_DIRS))
-zipsourceinstall: $(addsuffix _zipsourceinstall,$(TARGET_DIRS))
-zipexampleinstall: $(addsuffix _zipexampleinstall,$(TARGET_DIRS))
-zipdistinstall: $(addsuffix _zipdistinstall,$(TARGET_DIRS))
+install: fpc_install $(addsuffix _install,$(TARGET_DIRS))
+sourceinstall: fpc_sourceinstall
+exampleinstall: fpc_exampleinstall $(addsuffix _exampleinstall,$(TARGET_DIRS))
+distinstall: fpc_distinstall
+zipinstall: fpc_zipinstall
+zipsourceinstall: fpc_zipsourceinstall
+zipexampleinstall: fpc_zipexampleinstall $(addsuffix _zipexampleinstall,$(TARGET_DIRS))
+zipdistinstall: fpc_zipdistinstall
 clean: $(addsuffix _clean,$(TARGET_DIRS))
 distclean: $(addsuffix _distclean,$(TARGET_DIRS))
 cleanall: $(addsuffix _cleanall,$(TARGET_DIRS))
 info: fpc_info
-makefiles: fpc_makefiles $(addsuffix _makefiles,$(TARGET_DIRS))
+makefiles: fpc_makefiles
 .PHONY: all debug smart release units examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefiles
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc

+ 3 - 0
packages/libgbafpc/examples/audio/Makefile.fpc

@@ -1,6 +1,9 @@
 #
 #   Makefile.fpc for Free Pascal libgbafpc 2.x.y Examples
 #
+[package]
+name=libgbafpc-audio-examples
+version=2.4.0
 
 [target]
 dirs=PlayBoyScout 

+ 213 - 12
packages/libgbafpc/examples/graphics/Makefile

@@ -1,10 +1,10 @@
 #
-# Don't edit, this file is generated by FPCMake Version 2.0.0 [2009/08/02]
+# Don't edit, this file is generated by FPCMake Version 2.0.0 [2010/09/27]
 #
 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 m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-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
+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 m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-solaris x86_64-darwin x86_64-win64 x86_64-embedded arm-linux arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian powerpc64-linux powerpc64-darwin powerpc64-embedded avr-embedded armeb-linux armeb-embedded mipsel-linux
 BSDs = freebsd netbsd openbsd darwin
-UNIXs = linux $(BSDs) solaris qnx
+UNIXs = linux $(BSDs) solaris qnx haiku
 LIMIT83fs = go32v2 os2 emx watcom
 OSNeedsComspecToRunBatch = go32v2 watcom
 FORCE:
@@ -264,6 +264,8 @@ ifeq ($(UNITSDIR),)
 UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
 endif
 PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages $(FPCDIR)/packages/base $(FPCDIR)/packages/extra)
+override PACKAGE_NAME=libgbafpc-graphics-examples
+override PACKAGE_VERSION=2.4.0
 ifeq ($(FULL_TARGET),i386-linux)
 override TARGET_DIRS+=ansi_console PCXView SimpleBGScroll
 endif
@@ -324,6 +326,9 @@ endif
 ifeq ($(FULL_TARGET),i386-symbian)
 override TARGET_DIRS+=ansi_console PCXView SimpleBGScroll
 endif
+ifeq ($(FULL_TARGET),i386-nativent)
+override TARGET_DIRS+=ansi_console PCXView SimpleBGScroll
+endif
 ifeq ($(FULL_TARGET),m68k-linux)
 override TARGET_DIRS+=ansi_console PCXView SimpleBGScroll
 endif
@@ -387,6 +392,9 @@ endif
 ifeq ($(FULL_TARGET),x86_64-freebsd)
 override TARGET_DIRS+=ansi_console PCXView SimpleBGScroll
 endif
+ifeq ($(FULL_TARGET),x86_64-solaris)
+override TARGET_DIRS+=ansi_console PCXView SimpleBGScroll
+endif
 ifeq ($(FULL_TARGET),x86_64-darwin)
 override TARGET_DIRS+=ansi_console PCXView SimpleBGScroll
 endif
@@ -438,6 +446,9 @@ endif
 ifeq ($(FULL_TARGET),armeb-embedded)
 override TARGET_DIRS+=ansi_console PCXView SimpleBGScroll
 endif
+ifeq ($(FULL_TARGET),mipsel-linux)
+override TARGET_DIRS+=ansi_console PCXView SimpleBGScroll
+endif
 override INSTALL_FPCPACKAGE=y
 ifdef REQUIRE_UNITSDIR
 override UNITSDIR+=$(REQUIRE_UNITSDIR)
@@ -781,6 +792,10 @@ ifeq ($(OS_TARGET),symbian)
 SHAREDLIBEXT=.dll
 SHORTSUFFIX=symbian
 endif
+ifeq ($(OS_TARGET),NativeNT)
+SHAREDLIBEXT=.dll
+SHORTSUFFIX=nativent
+endif
 else
 ifeq ($(OS_TARGET),go32v1)
 PPUEXT=.pp1
@@ -1266,6 +1281,9 @@ endif
 ifeq ($(FULL_TARGET),i386-symbian)
 REQUIRE_PACKAGES_LIBGBAFPC=1
 endif
+ifeq ($(FULL_TARGET),i386-nativent)
+REQUIRE_PACKAGES_LIBGBAFPC=1
+endif
 ifeq ($(FULL_TARGET),m68k-linux)
 REQUIRE_PACKAGES_LIBGBAFPC=1
 endif
@@ -1329,6 +1347,9 @@ endif
 ifeq ($(FULL_TARGET),x86_64-freebsd)
 REQUIRE_PACKAGES_LIBGBAFPC=1
 endif
+ifeq ($(FULL_TARGET),x86_64-solaris)
+REQUIRE_PACKAGES_LIBGBAFPC=1
+endif
 ifeq ($(FULL_TARGET),x86_64-darwin)
 REQUIRE_PACKAGES_LIBGBAFPC=1
 endif
@@ -1380,6 +1401,9 @@ endif
 ifeq ($(FULL_TARGET),armeb-embedded)
 REQUIRE_PACKAGES_LIBGBAFPC=1
 endif
+ifeq ($(FULL_TARGET),mipsel-linux)
+REQUIRE_PACKAGES_LIBGBAFPC=1
+endif
 ifdef REQUIRE_PACKAGES_LIBGBAFPC
 PACKAGEDIR_LIBGBAFPC:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /libgbafpc/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_LIBGBAFPC),)
@@ -1563,10 +1587,169 @@ ifdef TARGET_RSTS
 override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))
 override CLEANRSTFILES+=$(RSTFILES)
 endif
+.PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall
+ifdef INSTALL_UNITS
+override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS))
+endif
+ifdef INSTALL_BUILDUNIT
+override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPPUFILES))
+endif
+ifdef INSTALLPPUFILES
+override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
+ifneq ($(UNITTARGETDIRPREFIX),)
+override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPULINKFILES))))
+endif
+override INSTALL_CREATEPACKAGEFPC=1
+endif
+ifdef INSTALLEXEFILES
+ifneq ($(TARGETDIRPREFIX),)
+override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(notdir $(INSTALLEXEFILES)))
+endif
+endif
+fpc_install: all $(INSTALLTARGET)
+ifdef INSTALLEXEFILES
+	$(MKDIR) $(INSTALL_BINDIR)
+ifdef UPXPROG
+	-$(UPXPROG) $(INSTALLEXEFILES)
+endif
+	$(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR)
+endif
+ifdef INSTALL_CREATEPACKAGEFPC
+ifdef FPCMAKE
+ifdef PACKAGE_VERSION
+ifneq ($(wildcard Makefile.fpc),)
+	$(FPCMAKE) -p -T$(CPU_TARGET)-$(OS_TARGET) Makefile.fpc
+	$(MKDIR) $(INSTALL_UNITDIR)
+	$(INSTALL) Package.fpc $(INSTALL_UNITDIR)
+endif
+endif
+endif
+endif
+ifdef INSTALLPPUFILES
+	$(MKDIR) $(INSTALL_UNITDIR)
+	$(INSTALL) $(INSTALLPPUFILES) $(INSTALL_UNITDIR)
+ifneq ($(INSTALLPPULINKFILES),)
+	$(INSTALL) $(INSTALLPPULINKFILES) $(INSTALL_UNITDIR)
+endif
+ifneq ($(wildcard $(LIB_FULLNAME)),)
+	$(MKDIR) $(INSTALL_LIBDIR)
+	$(INSTALL) $(LIB_FULLNAME) $(INSTALL_LIBDIR)
+ifdef inUnix
+	ln -sf $(LIB_FULLNAME) $(INSTALL_LIBDIR)/$(LIB_NAME)
+endif
+endif
+endif
+ifdef INSTALL_FILES
+	$(MKDIR) $(INSTALL_DATADIR)
+	$(INSTALL) $(INSTALL_FILES) $(INSTALL_DATADIR)
+endif
+fpc_sourceinstall: distclean
+	$(MKDIR) $(INSTALL_SOURCEDIR)
+	$(COPYTREE) $(BASEDIR)/* $(INSTALL_SOURCEDIR)
+fpc_exampleinstall: $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS))
+ifdef HASEXAMPLES
+	$(MKDIR) $(INSTALL_EXAMPLEDIR)
+endif
+ifdef EXAMPLESOURCEFILES
+	$(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR)
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR)
+endif
+.PHONY: fpc_distinstall
+fpc_distinstall: install exampleinstall
+.PHONY: fpc_zipinstall fpc_zipsourceinstall fpc_zipexampleinstall
+ifndef PACKDIR
+ifndef inUnix
+PACKDIR=$(BASEDIR)/../fpc-pack
+else
+PACKDIR=/tmp/fpc-pack
+endif
+endif
+ifndef ZIPNAME
+ifdef DIST_ZIPNAME
+ZIPNAME=$(DIST_ZIPNAME)
+else
+ZIPNAME=$(PACKAGE_NAME)
+endif
+endif
+ifndef FULLZIPNAME
+FULLZIPNAME=$(ZIPCROSSPREFIX)$(ZIPPREFIX)$(ZIPNAME)$(ZIPSUFFIX)
+endif
+ifndef ZIPTARGET
+ifdef DIST_ZIPTARGET
+ZIPTARGET=DIST_ZIPTARGET
+else
+ZIPTARGET=install
+endif
+endif
+ifndef USEZIP
+ifdef inUnix
+USETAR=1
+endif
+endif
+ifndef inUnix
+USEZIPWRAPPER=1
+endif
+ifdef USEZIPWRAPPER
+ZIPPATHSEP=$(PATHSEP)
+ZIPWRAPPER=$(subst /,$(PATHSEP),$(DIST_DESTDIR)/fpczip$(SRCBATCHEXT))
+else
+ZIPPATHSEP=/
+endif
+ZIPCMD_CDPACK:=cd $(subst /,$(ZIPPATHSEP),$(PACKDIR))
+ZIPCMD_CDBASE:=cd $(subst /,$(ZIPPATHSEP),$(BASEDIR))
+ifdef USETAR
+ZIPDESTFILE:=$(DIST_DESTDIR)/$(FULLZIPNAME)$(TAREXT)
+ZIPCMD_ZIP:=$(TARPROG) c$(TAROPT)f $(ZIPDESTFILE) *
+else
+ZIPDESTFILE:=$(DIST_DESTDIR)/$(FULLZIPNAME)$(ZIPEXT)
+ZIPCMD_ZIP:=$(subst /,$(ZIPPATHSEP),$(ZIPPROG)) -Dr $(ZIPOPT) $(ZIPDESTFILE) *
+endif
+fpc_zipinstall:
+	$(MAKE) $(ZIPTARGET) INSTALL_PREFIX=$(PACKDIR) ZIPINSTALL=1
+	$(MKDIR) $(DIST_DESTDIR)
+	$(DEL) $(ZIPDESTFILE)
+ifdef USEZIPWRAPPER
+ifneq ($(ECHOREDIR),echo)
+	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDPACK))" > $(ZIPWRAPPER)
+	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_ZIP))" >> $(ZIPWRAPPER)
+	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDBASE))" >> $(ZIPWRAPPER)
+else
+	echo $(ZIPCMD_CDPACK) > $(ZIPWRAPPER)
+	echo $(ZIPCMD_ZIP) >> $(ZIPWRAPPER)
+	echo $(ZIPCMD_CDBASE) >> $(ZIPWRAPPER)
+endif
+ifdef inUnix
+	/bin/sh $(ZIPWRAPPER)
+else
+ifdef RUNBATCH
+	$(RUNBATCH) $(ZIPWRAPPER)
+else
+	$(ZIPWRAPPER)
+endif
+endif
+	$(DEL) $(ZIPWRAPPER)
+else
+	$(ZIPCMD_CDPACK) ; $(ZIPCMD_ZIP) ; $(ZIPCMD_CDBASE)
+endif
+	$(DELTREE) $(PACKDIR)
+fpc_zipsourceinstall:
+	$(MAKE) fpc_zipinstall ZIPTARGET=sourceinstall ZIPSUFFIX=$(ZIPSOURCESUFFIX)
+fpc_zipexampleinstall:
+ifdef HASEXAMPLES
+	$(MAKE) fpc_zipinstall ZIPTARGET=exampleinstall ZIPSUFFIX=$(ZIPEXAMPLESUFFIX)
+endif
+fpc_zipdistinstall:
+	$(MAKE) fpc_zipinstall ZIPTARGET=distinstall
 .PHONY: fpc_clean fpc_cleanall fpc_distclean
 ifdef EXEFILES
 override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES))
 endif
+ifdef CLEAN_PROGRAMS
+override CLEANEXEFILES+=$(addprefix $(TARGETDIRPREFIX),$(addsuffix $(EXEEXT), $(CLEAN_PROGRAMS)))
+endif
 ifdef CLEAN_UNITS
 override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
 endif
@@ -1613,6 +1796,9 @@ endif
 ifdef CLEANRSTFILES
 	-$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
 endif
+endif
+ifdef CLEAN_FILES
+	-$(DEL) $(CLEAN_FILES)
 endif
 	-$(DELTREE) units
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
@@ -1836,6 +2022,11 @@ TARGET_DIRS_ANSI_CONSOLE=1
 TARGET_DIRS_PCXVIEW=1
 TARGET_DIRS_SIMPLEBGSCROLL=1
 endif
+ifeq ($(FULL_TARGET),i386-nativent)
+TARGET_DIRS_ANSI_CONSOLE=1
+TARGET_DIRS_PCXVIEW=1
+TARGET_DIRS_SIMPLEBGSCROLL=1
+endif
 ifeq ($(FULL_TARGET),m68k-linux)
 TARGET_DIRS_ANSI_CONSOLE=1
 TARGET_DIRS_PCXVIEW=1
@@ -1941,6 +2132,11 @@ TARGET_DIRS_ANSI_CONSOLE=1
 TARGET_DIRS_PCXVIEW=1
 TARGET_DIRS_SIMPLEBGSCROLL=1
 endif
+ifeq ($(FULL_TARGET),x86_64-solaris)
+TARGET_DIRS_ANSI_CONSOLE=1
+TARGET_DIRS_PCXVIEW=1
+TARGET_DIRS_SIMPLEBGSCROLL=1
+endif
 ifeq ($(FULL_TARGET),x86_64-darwin)
 TARGET_DIRS_ANSI_CONSOLE=1
 TARGET_DIRS_PCXVIEW=1
@@ -2026,6 +2222,11 @@ TARGET_DIRS_ANSI_CONSOLE=1
 TARGET_DIRS_PCXVIEW=1
 TARGET_DIRS_SIMPLEBGSCROLL=1
 endif
+ifeq ($(FULL_TARGET),mipsel-linux)
+TARGET_DIRS_ANSI_CONSOLE=1
+TARGET_DIRS_PCXVIEW=1
+TARGET_DIRS_SIMPLEBGSCROLL=1
+endif
 ifdef TARGET_DIRS_ANSI_CONSOLE
 ansi_console_all:
 	$(MAKE) -C ansi_console all
@@ -2168,19 +2369,19 @@ release: $(addsuffix _release,$(TARGET_DIRS))
 units: $(addsuffix _units,$(TARGET_DIRS))
 examples: $(addsuffix _examples,$(TARGET_DIRS))
 shared: $(addsuffix _shared,$(TARGET_DIRS))
-install: $(addsuffix _install,$(TARGET_DIRS))
-sourceinstall: $(addsuffix _sourceinstall,$(TARGET_DIRS))
-exampleinstall: $(addsuffix _exampleinstall,$(TARGET_DIRS))
-distinstall: $(addsuffix _distinstall,$(TARGET_DIRS))
-zipinstall: $(addsuffix _zipinstall,$(TARGET_DIRS))
-zipsourceinstall: $(addsuffix _zipsourceinstall,$(TARGET_DIRS))
-zipexampleinstall: $(addsuffix _zipexampleinstall,$(TARGET_DIRS))
-zipdistinstall: $(addsuffix _zipdistinstall,$(TARGET_DIRS))
+install: fpc_install $(addsuffix _install,$(TARGET_DIRS))
+sourceinstall: fpc_sourceinstall
+exampleinstall: fpc_exampleinstall $(addsuffix _exampleinstall,$(TARGET_DIRS))
+distinstall: fpc_distinstall
+zipinstall: fpc_zipinstall
+zipsourceinstall: fpc_zipsourceinstall
+zipexampleinstall: fpc_zipexampleinstall $(addsuffix _zipexampleinstall,$(TARGET_DIRS))
+zipdistinstall: fpc_zipdistinstall
 clean: $(addsuffix _clean,$(TARGET_DIRS))
 distclean: $(addsuffix _distclean,$(TARGET_DIRS))
 cleanall: $(addsuffix _cleanall,$(TARGET_DIRS))
 info: fpc_info
-makefiles: fpc_makefiles $(addsuffix _makefiles,$(TARGET_DIRS))
+makefiles: fpc_makefiles
 .PHONY: all debug smart release units examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefiles
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc

+ 3 - 0
packages/libgbafpc/examples/graphics/Makefile.fpc

@@ -1,6 +1,9 @@
 #
 #   Makefile.fpc for Free Pascal libgbafpc 2.x.y Examples
 #
+[package]
+name=libgbafpc-graphics-examples
+version=2.4.0
 
 [target]
 dirs=ansi_console PCXView SimpleBGScroll

+ 142 - 8
packages/libgbafpc/examples/template/Makefile

@@ -1,10 +1,10 @@
 #
-# Don't edit, this file is generated by FPCMake Version 2.0.0 [2009/08/02]
+# Don't edit, this file is generated by FPCMake Version 2.0.0 [2010/09/27]
 #
 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 m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-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
+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 m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-solaris x86_64-darwin x86_64-win64 x86_64-embedded arm-linux arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian powerpc64-linux powerpc64-darwin powerpc64-embedded avr-embedded armeb-linux armeb-embedded mipsel-linux
 BSDs = freebsd netbsd openbsd darwin
-UNIXs = linux $(BSDs) solaris qnx
+UNIXs = linux $(BSDs) solaris qnx haiku
 LIMIT83fs = go32v2 os2 emx watcom
 OSNeedsComspecToRunBatch = go32v2 watcom
 FORCE:
@@ -266,6 +266,8 @@ ifeq ($(UNITSDIR),)
 UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
 endif
 PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages $(FPCDIR)/packages/base $(FPCDIR)/packages/extra)
+override PACKAGE_NAME=libgbafpc-template-examples
+override PACKAGE_VERSION=2.4.0
 BUILD = build
 INC = inc
 AUDIO_FILES = $(foreach dir, $(notdir $(wildcard audio/*.*)), $(CURDIR)/audio/$(dir))
@@ -331,6 +333,9 @@ endif
 ifeq ($(FULL_TARGET),i386-symbian)
 override TARGET_PROGRAMS+=template
 endif
+ifeq ($(FULL_TARGET),i386-nativent)
+override TARGET_PROGRAMS+=template
+endif
 ifeq ($(FULL_TARGET),m68k-linux)
 override TARGET_PROGRAMS+=template
 endif
@@ -394,6 +399,9 @@ endif
 ifeq ($(FULL_TARGET),x86_64-freebsd)
 override TARGET_PROGRAMS+=template
 endif
+ifeq ($(FULL_TARGET),x86_64-solaris)
+override TARGET_PROGRAMS+=template
+endif
 ifeq ($(FULL_TARGET),x86_64-darwin)
 override TARGET_PROGRAMS+=template
 endif
@@ -445,6 +453,9 @@ endif
 ifeq ($(FULL_TARGET),armeb-embedded)
 override TARGET_PROGRAMS+=template
 endif
+ifeq ($(FULL_TARGET),mipsel-linux)
+override TARGET_PROGRAMS+=template
+endif
 ifeq ($(FULL_TARGET),i386-linux)
 override CLEAN_UNITS+=*
 endif
@@ -505,6 +516,9 @@ endif
 ifeq ($(FULL_TARGET),i386-symbian)
 override CLEAN_UNITS+=*
 endif
+ifeq ($(FULL_TARGET),i386-nativent)
+override CLEAN_UNITS+=*
+endif
 ifeq ($(FULL_TARGET),m68k-linux)
 override CLEAN_UNITS+=*
 endif
@@ -568,6 +582,9 @@ endif
 ifeq ($(FULL_TARGET),x86_64-freebsd)
 override CLEAN_UNITS+=*
 endif
+ifeq ($(FULL_TARGET),x86_64-solaris)
+override CLEAN_UNITS+=*
+endif
 ifeq ($(FULL_TARGET),x86_64-darwin)
 override CLEAN_UNITS+=*
 endif
@@ -619,6 +636,9 @@ endif
 ifeq ($(FULL_TARGET),armeb-embedded)
 override CLEAN_UNITS+=*
 endif
+ifeq ($(FULL_TARGET),mipsel-linux)
+override CLEAN_UNITS+=*
+endif
 ifeq ($(FULL_TARGET),i386-linux)
 override CLEAN_FILES+=*.elf *.o *.s *.gba *.h *.bin *.map $(BUILD)/* $(INC)/*
 endif
@@ -679,6 +699,9 @@ endif
 ifeq ($(FULL_TARGET),i386-symbian)
 override CLEAN_FILES+=*.elf *.o *.s *.gba *.h *.bin *.map $(BUILD)/* $(INC)/*
 endif
+ifeq ($(FULL_TARGET),i386-nativent)
+override CLEAN_FILES+=*.elf *.o *.s *.gba *.h *.bin *.map $(BUILD)/* $(INC)/*
+endif
 ifeq ($(FULL_TARGET),m68k-linux)
 override CLEAN_FILES+=*.elf *.o *.s *.gba *.h *.bin *.map $(BUILD)/* $(INC)/*
 endif
@@ -742,6 +765,9 @@ endif
 ifeq ($(FULL_TARGET),x86_64-freebsd)
 override CLEAN_FILES+=*.elf *.o *.s *.gba *.h *.bin *.map $(BUILD)/* $(INC)/*
 endif
+ifeq ($(FULL_TARGET),x86_64-solaris)
+override CLEAN_FILES+=*.elf *.o *.s *.gba *.h *.bin *.map $(BUILD)/* $(INC)/*
+endif
 ifeq ($(FULL_TARGET),x86_64-darwin)
 override CLEAN_FILES+=*.elf *.o *.s *.gba *.h *.bin *.map $(BUILD)/* $(INC)/*
 endif
@@ -793,6 +819,9 @@ endif
 ifeq ($(FULL_TARGET),armeb-embedded)
 override CLEAN_FILES+=*.elf *.o *.s *.gba *.h *.bin *.map $(BUILD)/* $(INC)/*
 endif
+ifeq ($(FULL_TARGET),mipsel-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.gba *.h *.bin *.map $(BUILD)/* $(INC)/*
+endif
 override INSTALL_FPCPACKAGE=y
 ifdef REQUIRE_UNITSDIR
 override UNITSDIR+=$(REQUIRE_UNITSDIR)
@@ -1136,6 +1165,10 @@ ifeq ($(OS_TARGET),symbian)
 SHAREDLIBEXT=.dll
 SHORTSUFFIX=symbian
 endif
+ifeq ($(OS_TARGET),NativeNT)
+SHAREDLIBEXT=.dll
+SHORTSUFFIX=nativent
+endif
 else
 ifeq ($(OS_TARGET),go32v1)
 PPUEXT=.pp1
@@ -1621,6 +1654,9 @@ endif
 ifeq ($(FULL_TARGET),i386-symbian)
 REQUIRE_PACKAGES_LIBGBAFPC=1
 endif
+ifeq ($(FULL_TARGET),i386-nativent)
+REQUIRE_PACKAGES_LIBGBAFPC=1
+endif
 ifeq ($(FULL_TARGET),m68k-linux)
 REQUIRE_PACKAGES_LIBGBAFPC=1
 endif
@@ -1684,6 +1720,9 @@ endif
 ifeq ($(FULL_TARGET),x86_64-freebsd)
 REQUIRE_PACKAGES_LIBGBAFPC=1
 endif
+ifeq ($(FULL_TARGET),x86_64-solaris)
+REQUIRE_PACKAGES_LIBGBAFPC=1
+endif
 ifeq ($(FULL_TARGET),x86_64-darwin)
 REQUIRE_PACKAGES_LIBGBAFPC=1
 endif
@@ -1735,6 +1774,9 @@ endif
 ifeq ($(FULL_TARGET),armeb-embedded)
 REQUIRE_PACKAGES_LIBGBAFPC=1
 endif
+ifeq ($(FULL_TARGET),mipsel-linux)
+REQUIRE_PACKAGES_LIBGBAFPC=1
+endif
 ifdef REQUIRE_PACKAGES_LIBGBAFPC
 PACKAGEDIR_LIBGBAFPC:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /libgbafpc/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_LIBGBAFPC),)
@@ -2079,10 +2121,99 @@ endif
 ifdef TARGET_EXAMPLEDIRS
 	$(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR)
 endif
+.PHONY: fpc_distinstall
+fpc_distinstall: install exampleinstall
+.PHONY: fpc_zipinstall fpc_zipsourceinstall fpc_zipexampleinstall
+ifndef PACKDIR
+ifndef inUnix
+PACKDIR=$(BASEDIR)/../fpc-pack
+else
+PACKDIR=/tmp/fpc-pack
+endif
+endif
+ifndef ZIPNAME
+ifdef DIST_ZIPNAME
+ZIPNAME=$(DIST_ZIPNAME)
+else
+ZIPNAME=$(PACKAGE_NAME)
+endif
+endif
+ifndef FULLZIPNAME
+FULLZIPNAME=$(ZIPCROSSPREFIX)$(ZIPPREFIX)$(ZIPNAME)$(ZIPSUFFIX)
+endif
+ifndef ZIPTARGET
+ifdef DIST_ZIPTARGET
+ZIPTARGET=DIST_ZIPTARGET
+else
+ZIPTARGET=install
+endif
+endif
+ifndef USEZIP
+ifdef inUnix
+USETAR=1
+endif
+endif
+ifndef inUnix
+USEZIPWRAPPER=1
+endif
+ifdef USEZIPWRAPPER
+ZIPPATHSEP=$(PATHSEP)
+ZIPWRAPPER=$(subst /,$(PATHSEP),$(DIST_DESTDIR)/fpczip$(SRCBATCHEXT))
+else
+ZIPPATHSEP=/
+endif
+ZIPCMD_CDPACK:=cd $(subst /,$(ZIPPATHSEP),$(PACKDIR))
+ZIPCMD_CDBASE:=cd $(subst /,$(ZIPPATHSEP),$(BASEDIR))
+ifdef USETAR
+ZIPDESTFILE:=$(DIST_DESTDIR)/$(FULLZIPNAME)$(TAREXT)
+ZIPCMD_ZIP:=$(TARPROG) c$(TAROPT)f $(ZIPDESTFILE) *
+else
+ZIPDESTFILE:=$(DIST_DESTDIR)/$(FULLZIPNAME)$(ZIPEXT)
+ZIPCMD_ZIP:=$(subst /,$(ZIPPATHSEP),$(ZIPPROG)) -Dr $(ZIPOPT) $(ZIPDESTFILE) *
+endif
+fpc_zipinstall:
+	$(MAKE) $(ZIPTARGET) INSTALL_PREFIX=$(PACKDIR) ZIPINSTALL=1
+	$(MKDIR) $(DIST_DESTDIR)
+	$(DEL) $(ZIPDESTFILE)
+ifdef USEZIPWRAPPER
+ifneq ($(ECHOREDIR),echo)
+	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDPACK))" > $(ZIPWRAPPER)
+	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_ZIP))" >> $(ZIPWRAPPER)
+	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDBASE))" >> $(ZIPWRAPPER)
+else
+	echo $(ZIPCMD_CDPACK) > $(ZIPWRAPPER)
+	echo $(ZIPCMD_ZIP) >> $(ZIPWRAPPER)
+	echo $(ZIPCMD_CDBASE) >> $(ZIPWRAPPER)
+endif
+ifdef inUnix
+	/bin/sh $(ZIPWRAPPER)
+else
+ifdef RUNBATCH
+	$(RUNBATCH) $(ZIPWRAPPER)
+else
+	$(ZIPWRAPPER)
+endif
+endif
+	$(DEL) $(ZIPWRAPPER)
+else
+	$(ZIPCMD_CDPACK) ; $(ZIPCMD_ZIP) ; $(ZIPCMD_CDBASE)
+endif
+	$(DELTREE) $(PACKDIR)
+fpc_zipsourceinstall:
+	$(MAKE) fpc_zipinstall ZIPTARGET=sourceinstall ZIPSUFFIX=$(ZIPSOURCESUFFIX)
+fpc_zipexampleinstall:
+ifdef HASEXAMPLES
+	$(MAKE) fpc_zipinstall ZIPTARGET=exampleinstall ZIPSUFFIX=$(ZIPEXAMPLESUFFIX)
+endif
+fpc_zipdistinstall:
+	$(MAKE) fpc_zipinstall ZIPTARGET=distinstall
 .PHONY: fpc_clean fpc_cleanall fpc_distclean
 ifdef EXEFILES
 override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES))
 endif
+ifdef CLEAN_PROGRAMS
+override CLEANEXEFILES+=$(addprefix $(TARGETDIRPREFIX),$(addsuffix $(EXEEXT), $(CLEAN_PROGRAMS)))
+endif
 ifdef CLEAN_UNITS
 override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
 endif
@@ -2129,6 +2260,9 @@ endif
 ifdef CLEANRSTFILES
 	-$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
 endif
+endif
+ifdef CLEAN_FILES
+	-$(DEL) $(CLEAN_FILES)
 endif
 	-$(DELTREE) units
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
@@ -2297,11 +2431,11 @@ shared: fpc_shared
 install: fpc_install
 sourceinstall: fpc_sourceinstall
 exampleinstall: fpc_exampleinstall
-distinstall:
-zipinstall:
-zipsourceinstall:
-zipexampleinstall:
-zipdistinstall:
+distinstall: fpc_distinstall
+zipinstall: fpc_zipinstall
+zipsourceinstall: fpc_zipsourceinstall
+zipexampleinstall: fpc_zipexampleinstall
+zipdistinstall: fpc_zipdistinstall
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info

+ 3 - 0
packages/libgbafpc/examples/template/Makefile.fpc

@@ -1,6 +1,9 @@
 #
 #   Makefile.fpc for Free Pascal libgbafpc 2.x.y Examples
 #
+[package]
+name=libgbafpc-template-examples
+version=2.4.0
 
 [target]
 loaders=