2
0

Makefile 66 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176
  1. #
  2. # Don't edit, this file is generated by FPCMake Version 2.0.0 [2007/08/29]
  3. #
  4. default: all
  5. MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos 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-win64 x86_64-embedded arm-linux arm-palmos arm-wince arm-gba arm-nds arm-embedded arm-symbian powerpc64-linux powerpc64-embedded
  6. BSDs = freebsd netbsd openbsd darwin
  7. UNIXs = linux $(BSDs) solaris qnx
  8. LIMIT83fs = go32v2 os2 emx watcom
  9. FORCE:
  10. .PHONY: FORCE
  11. override PATH:=$(patsubst %/,%,$(subst \,/,$(PATH)))
  12. ifneq ($(findstring darwin,$(OSTYPE)),)
  13. inUnix=1 #darwin
  14. SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
  15. else
  16. ifeq ($(findstring ;,$(PATH)),)
  17. inUnix=1
  18. SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
  19. else
  20. SEARCHPATH:=$(subst ;, ,$(PATH))
  21. endif
  22. endif
  23. SEARCHPATH+=$(patsubst %/,%,$(subst \,/,$(dir $(MAKE))))
  24. PWD:=$(strip $(wildcard $(addsuffix /pwd.exe,$(SEARCHPATH))))
  25. ifeq ($(PWD),)
  26. PWD:=$(strip $(wildcard $(addsuffix /pwd,$(SEARCHPATH))))
  27. ifeq ($(PWD),)
  28. $(error You need the GNU utils package to use this Makefile)
  29. else
  30. PWD:=$(firstword $(PWD))
  31. SRCEXEEXT=
  32. endif
  33. else
  34. PWD:=$(firstword $(PWD))
  35. SRCEXEEXT=.exe
  36. endif
  37. ifndef inUnix
  38. ifeq ($(OS),Windows_NT)
  39. inWinNT=1
  40. else
  41. ifdef OS2_SHELL
  42. inOS2=1
  43. endif
  44. endif
  45. else
  46. ifneq ($(findstring cygdrive,$(PATH)),)
  47. inCygWin=1
  48. endif
  49. endif
  50. ifdef inUnix
  51. SRCBATCHEXT=.sh
  52. else
  53. ifdef inOS2
  54. SRCBATCHEXT=.cmd
  55. else
  56. SRCBATCHEXT=.bat
  57. endif
  58. endif
  59. ifdef inUnix
  60. PATHSEP=/
  61. else
  62. PATHSEP:=$(subst /,\,/)
  63. ifdef inCygWin
  64. PATHSEP=/
  65. endif
  66. endif
  67. ifdef PWD
  68. BASEDIR:=$(subst \,/,$(shell $(PWD)))
  69. ifdef inCygWin
  70. ifneq ($(findstring /cygdrive/,$(BASEDIR)),)
  71. BASENODIR:=$(patsubst /cygdrive%,%,$(BASEDIR))
  72. BASEDRIVE:=$(firstword $(subst /, ,$(BASENODIR)))
  73. BASEDIR:=$(subst /cygdrive/$(BASEDRIVE)/,$(BASEDRIVE):/,$(BASEDIR))
  74. endif
  75. endif
  76. else
  77. BASEDIR=.
  78. endif
  79. ifdef inOS2
  80. ifndef ECHO
  81. ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
  82. ifeq ($(ECHO),)
  83. ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
  84. ifeq ($(ECHO),)
  85. ECHO=echo
  86. else
  87. ECHO:=$(firstword $(ECHO))
  88. endif
  89. else
  90. ECHO:=$(firstword $(ECHO))
  91. endif
  92. endif
  93. export ECHO
  94. endif
  95. override OS_TARGET_DEFAULT=palmos
  96. override DEFAULT_FPCDIR=../..
  97. ifndef FPC
  98. ifdef PP
  99. FPC=$(PP)
  100. endif
  101. endif
  102. ifndef FPC
  103. FPCPROG:=$(strip $(wildcard $(addsuffix /fpc$(SRCEXEEXT),$(SEARCHPATH))))
  104. ifneq ($(FPCPROG),)
  105. FPCPROG:=$(firstword $(FPCPROG))
  106. FPC:=$(shell $(FPCPROG) -PB)
  107. ifneq ($(findstring Error,$(FPC)),)
  108. override FPC=$(firstword $(strip $(wildcard $(addsuffix /ppc386$(SRCEXEEXT),$(SEARCHPATH)))))
  109. endif
  110. else
  111. override FPC=$(firstword $(strip $(wildcard $(addsuffix /ppc386$(SRCEXEEXT),$(SEARCHPATH)))))
  112. endif
  113. endif
  114. override FPC:=$(subst $(SRCEXEEXT),,$(FPC))
  115. override FPC:=$(subst \,/,$(FPC))$(SRCEXEEXT)
  116. FOUNDFPC:=$(strip $(wildcard $(FPC)))
  117. ifeq ($(FOUNDFPC),)
  118. FOUNDFPC=$(strip $(wildcard $(addsuffix /$(FPC),$(SEARCHPATH))))
  119. ifeq ($(FOUNDFPC),)
  120. $(error Compiler $(FPC) not found)
  121. endif
  122. endif
  123. ifndef FPC_COMPILERINFO
  124. FPC_COMPILERINFO:=$(shell $(FPC) -iVSPTPSOTO)
  125. endif
  126. ifndef FPC_VERSION
  127. FPC_VERSION:=$(word 1,$(FPC_COMPILERINFO))
  128. endif
  129. export FPC FPC_VERSION FPC_COMPILERINFO
  130. unexport CHECKDEPEND ALLDEPENDENCIES
  131. ifndef CPU_TARGET
  132. ifdef CPU_TARGET_DEFAULT
  133. CPU_TARGET=$(CPU_TARGET_DEFAULT)
  134. endif
  135. endif
  136. ifndef OS_TARGET
  137. ifdef OS_TARGET_DEFAULT
  138. OS_TARGET=$(OS_TARGET_DEFAULT)
  139. endif
  140. endif
  141. ifneq ($(words $(FPC_COMPILERINFO)),5)
  142. FPC_COMPILERINFO+=$(shell $(FPC) -iSP)
  143. FPC_COMPILERINFO+=$(shell $(FPC) -iTP)
  144. FPC_COMPILERINFO+=$(shell $(FPC) -iSO)
  145. FPC_COMPILERINFO+=$(shell $(FPC) -iTO)
  146. endif
  147. ifndef CPU_SOURCE
  148. CPU_SOURCE:=$(word 2,$(FPC_COMPILERINFO))
  149. endif
  150. ifndef CPU_TARGET
  151. CPU_TARGET:=$(word 3,$(FPC_COMPILERINFO))
  152. endif
  153. ifndef OS_SOURCE
  154. OS_SOURCE:=$(word 4,$(FPC_COMPILERINFO))
  155. endif
  156. ifndef OS_TARGET
  157. OS_TARGET:=$(word 5,$(FPC_COMPILERINFO))
  158. endif
  159. FULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
  160. FULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)
  161. ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),)
  162. TARGETSUFFIX=$(OS_TARGET)
  163. SOURCESUFFIX=$(OS_SOURCE)
  164. else
  165. TARGETSUFFIX=$(FULL_TARGET)
  166. SOURCESUFFIX=$(FULL_SOURCE)
  167. endif
  168. ifneq ($(FULL_TARGET),$(FULL_SOURCE))
  169. CROSSCOMPILE=1
  170. endif
  171. ifeq ($(findstring makefile,$(MAKECMDGOALS)),)
  172. ifeq ($(findstring $(FULL_TARGET),$(MAKEFILETARGETS)),)
  173. $(error The Makefile doesn't support target $(FULL_TARGET), please run fpcmake first)
  174. endif
  175. endif
  176. ifneq ($(findstring $(OS_TARGET),$(BSDs)),)
  177. BSDhier=1
  178. endif
  179. ifeq ($(OS_TARGET),linux)
  180. linuxHier=1
  181. endif
  182. export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE TARGETSUFFIX SOURCESUFFIX CROSSCOMPILE
  183. ifdef FPCDIR
  184. override FPCDIR:=$(subst \,/,$(FPCDIR))
  185. ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
  186. override FPCDIR=wrong
  187. endif
  188. else
  189. override FPCDIR=wrong
  190. endif
  191. ifdef DEFAULT_FPCDIR
  192. ifeq ($(FPCDIR),wrong)
  193. override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
  194. ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
  195. override FPCDIR=wrong
  196. endif
  197. endif
  198. endif
  199. ifeq ($(FPCDIR),wrong)
  200. ifdef inUnix
  201. override FPCDIR=/usr/local/lib/fpc/$(FPC_VERSION)
  202. ifeq ($(wildcard $(FPCDIR)/units),)
  203. override FPCDIR=/usr/lib/fpc/$(FPC_VERSION)
  204. endif
  205. else
  206. override FPCDIR:=$(subst /$(FPC),,$(firstword $(strip $(wildcard $(addsuffix /$(FPC),$(SEARCHPATH))))))
  207. override FPCDIR:=$(FPCDIR)/..
  208. ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
  209. override FPCDIR:=$(FPCDIR)/..
  210. ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
  211. override FPCDIR:=$(BASEDIR)
  212. ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
  213. override FPCDIR=c:/pp
  214. endif
  215. endif
  216. endif
  217. endif
  218. endif
  219. ifndef CROSSBINDIR
  220. CROSSBINDIR:=$(wildcard $(FPCDIR)/bin/$(TARGETSUFFIX))
  221. endif
  222. ifndef BINUTILSPREFIX
  223. ifndef CROSSBINDIR
  224. ifdef CROSSCOMPILE
  225. BINUTILSPREFIX=$(CPU_TARGET)-$(OS_TARGET)-
  226. endif
  227. endif
  228. endif
  229. UNITSDIR:=$(wildcard $(FPCDIR)/units/$(TARGETSUFFIX))
  230. ifeq ($(UNITSDIR),)
  231. UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
  232. endif
  233. PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages $(FPCDIR)/packages/base $(FPCDIR)/packages/extra)
  234. override PACKAGE_NAME=rtl
  235. PACKAGEDIR_MAIN:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
  236. RTL=..
  237. INC=$(RTL)/inc
  238. COMMON=$(RTL)/common
  239. PROCINC=$(RTL)/$(CPU_TARGET)
  240. UNITPREFIX=rtl
  241. SYSTEMUNIT=system
  242. PRT0=prt0
  243. ifdef RELEASE
  244. override FPCOPT+=-Ur
  245. endif
  246. OBJPASDIR=$(RTL)/objpas
  247. GRAPHDIR=$(INC)/graph
  248. ifeq ($(FULL_TARGET),i386-linux)
  249. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  250. endif
  251. ifeq ($(FULL_TARGET),i386-go32v2)
  252. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  253. endif
  254. ifeq ($(FULL_TARGET),i386-win32)
  255. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  256. endif
  257. ifeq ($(FULL_TARGET),i386-os2)
  258. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  259. endif
  260. ifeq ($(FULL_TARGET),i386-freebsd)
  261. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  262. endif
  263. ifeq ($(FULL_TARGET),i386-beos)
  264. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  265. endif
  266. ifeq ($(FULL_TARGET),i386-netbsd)
  267. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  268. endif
  269. ifeq ($(FULL_TARGET),i386-solaris)
  270. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  271. endif
  272. ifeq ($(FULL_TARGET),i386-qnx)
  273. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  274. endif
  275. ifeq ($(FULL_TARGET),i386-netware)
  276. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  277. endif
  278. ifeq ($(FULL_TARGET),i386-openbsd)
  279. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  280. endif
  281. ifeq ($(FULL_TARGET),i386-wdosx)
  282. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  283. endif
  284. ifeq ($(FULL_TARGET),i386-darwin)
  285. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  286. endif
  287. ifeq ($(FULL_TARGET),i386-emx)
  288. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  289. endif
  290. ifeq ($(FULL_TARGET),i386-watcom)
  291. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  292. endif
  293. ifeq ($(FULL_TARGET),i386-netwlibc)
  294. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  295. endif
  296. ifeq ($(FULL_TARGET),i386-wince)
  297. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  298. endif
  299. ifeq ($(FULL_TARGET),i386-embedded)
  300. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  301. endif
  302. ifeq ($(FULL_TARGET),i386-symbian)
  303. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  304. endif
  305. ifeq ($(FULL_TARGET),m68k-linux)
  306. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  307. endif
  308. ifeq ($(FULL_TARGET),m68k-freebsd)
  309. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  310. endif
  311. ifeq ($(FULL_TARGET),m68k-netbsd)
  312. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  313. endif
  314. ifeq ($(FULL_TARGET),m68k-amiga)
  315. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  316. endif
  317. ifeq ($(FULL_TARGET),m68k-atari)
  318. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  319. endif
  320. ifeq ($(FULL_TARGET),m68k-openbsd)
  321. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  322. endif
  323. ifeq ($(FULL_TARGET),m68k-palmos)
  324. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  325. endif
  326. ifeq ($(FULL_TARGET),m68k-embedded)
  327. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  328. endif
  329. ifeq ($(FULL_TARGET),powerpc-linux)
  330. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  331. endif
  332. ifeq ($(FULL_TARGET),powerpc-netbsd)
  333. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  334. endif
  335. ifeq ($(FULL_TARGET),powerpc-amiga)
  336. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  337. endif
  338. ifeq ($(FULL_TARGET),powerpc-macos)
  339. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  340. endif
  341. ifeq ($(FULL_TARGET),powerpc-darwin)
  342. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  343. endif
  344. ifeq ($(FULL_TARGET),powerpc-morphos)
  345. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  346. endif
  347. ifeq ($(FULL_TARGET),powerpc-embedded)
  348. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  349. endif
  350. ifeq ($(FULL_TARGET),sparc-linux)
  351. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  352. endif
  353. ifeq ($(FULL_TARGET),sparc-netbsd)
  354. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  355. endif
  356. ifeq ($(FULL_TARGET),sparc-solaris)
  357. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  358. endif
  359. ifeq ($(FULL_TARGET),sparc-embedded)
  360. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  361. endif
  362. ifeq ($(FULL_TARGET),x86_64-linux)
  363. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  364. endif
  365. ifeq ($(FULL_TARGET),x86_64-freebsd)
  366. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  367. endif
  368. ifeq ($(FULL_TARGET),x86_64-win64)
  369. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  370. endif
  371. ifeq ($(FULL_TARGET),x86_64-embedded)
  372. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  373. endif
  374. ifeq ($(FULL_TARGET),arm-linux)
  375. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  376. endif
  377. ifeq ($(FULL_TARGET),arm-palmos)
  378. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  379. endif
  380. ifeq ($(FULL_TARGET),arm-wince)
  381. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  382. endif
  383. ifeq ($(FULL_TARGET),arm-gba)
  384. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  385. endif
  386. ifeq ($(FULL_TARGET),arm-nds)
  387. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  388. endif
  389. ifeq ($(FULL_TARGET),arm-embedded)
  390. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  391. endif
  392. ifeq ($(FULL_TARGET),arm-symbian)
  393. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  394. endif
  395. ifeq ($(FULL_TARGET),powerpc64-linux)
  396. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  397. endif
  398. ifeq ($(FULL_TARGET),powerpc64-embedded)
  399. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes objpas macpas strings lnfodwrf lineinfo heaptrc windows messages dynlibs dos objects rtlconsts sysconst sysutils typinfo types fgl classes fmtbcd strutils convutils math dateutils varutils variants matrix ucomplex charset getopts winsock sockets
  400. endif
  401. ifeq ($(FULL_TARGET),i386-linux)
  402. override TARGET_LOADERS+=prt0
  403. endif
  404. ifeq ($(FULL_TARGET),i386-go32v2)
  405. override TARGET_LOADERS+=prt0
  406. endif
  407. ifeq ($(FULL_TARGET),i386-win32)
  408. override TARGET_LOADERS+=prt0
  409. endif
  410. ifeq ($(FULL_TARGET),i386-os2)
  411. override TARGET_LOADERS+=prt0
  412. endif
  413. ifeq ($(FULL_TARGET),i386-freebsd)
  414. override TARGET_LOADERS+=prt0
  415. endif
  416. ifeq ($(FULL_TARGET),i386-beos)
  417. override TARGET_LOADERS+=prt0
  418. endif
  419. ifeq ($(FULL_TARGET),i386-netbsd)
  420. override TARGET_LOADERS+=prt0
  421. endif
  422. ifeq ($(FULL_TARGET),i386-solaris)
  423. override TARGET_LOADERS+=prt0
  424. endif
  425. ifeq ($(FULL_TARGET),i386-qnx)
  426. override TARGET_LOADERS+=prt0
  427. endif
  428. ifeq ($(FULL_TARGET),i386-netware)
  429. override TARGET_LOADERS+=prt0
  430. endif
  431. ifeq ($(FULL_TARGET),i386-openbsd)
  432. override TARGET_LOADERS+=prt0
  433. endif
  434. ifeq ($(FULL_TARGET),i386-wdosx)
  435. override TARGET_LOADERS+=prt0
  436. endif
  437. ifeq ($(FULL_TARGET),i386-darwin)
  438. override TARGET_LOADERS+=prt0
  439. endif
  440. ifeq ($(FULL_TARGET),i386-emx)
  441. override TARGET_LOADERS+=prt0
  442. endif
  443. ifeq ($(FULL_TARGET),i386-watcom)
  444. override TARGET_LOADERS+=prt0
  445. endif
  446. ifeq ($(FULL_TARGET),i386-netwlibc)
  447. override TARGET_LOADERS+=prt0
  448. endif
  449. ifeq ($(FULL_TARGET),i386-wince)
  450. override TARGET_LOADERS+=prt0
  451. endif
  452. ifeq ($(FULL_TARGET),i386-embedded)
  453. override TARGET_LOADERS+=prt0
  454. endif
  455. ifeq ($(FULL_TARGET),i386-symbian)
  456. override TARGET_LOADERS+=prt0
  457. endif
  458. ifeq ($(FULL_TARGET),m68k-linux)
  459. override TARGET_LOADERS+=prt0
  460. endif
  461. ifeq ($(FULL_TARGET),m68k-freebsd)
  462. override TARGET_LOADERS+=prt0
  463. endif
  464. ifeq ($(FULL_TARGET),m68k-netbsd)
  465. override TARGET_LOADERS+=prt0
  466. endif
  467. ifeq ($(FULL_TARGET),m68k-amiga)
  468. override TARGET_LOADERS+=prt0
  469. endif
  470. ifeq ($(FULL_TARGET),m68k-atari)
  471. override TARGET_LOADERS+=prt0
  472. endif
  473. ifeq ($(FULL_TARGET),m68k-openbsd)
  474. override TARGET_LOADERS+=prt0
  475. endif
  476. ifeq ($(FULL_TARGET),m68k-palmos)
  477. override TARGET_LOADERS+=prt0
  478. endif
  479. ifeq ($(FULL_TARGET),m68k-embedded)
  480. override TARGET_LOADERS+=prt0
  481. endif
  482. ifeq ($(FULL_TARGET),powerpc-linux)
  483. override TARGET_LOADERS+=prt0
  484. endif
  485. ifeq ($(FULL_TARGET),powerpc-netbsd)
  486. override TARGET_LOADERS+=prt0
  487. endif
  488. ifeq ($(FULL_TARGET),powerpc-amiga)
  489. override TARGET_LOADERS+=prt0
  490. endif
  491. ifeq ($(FULL_TARGET),powerpc-macos)
  492. override TARGET_LOADERS+=prt0
  493. endif
  494. ifeq ($(FULL_TARGET),powerpc-darwin)
  495. override TARGET_LOADERS+=prt0
  496. endif
  497. ifeq ($(FULL_TARGET),powerpc-morphos)
  498. override TARGET_LOADERS+=prt0
  499. endif
  500. ifeq ($(FULL_TARGET),powerpc-embedded)
  501. override TARGET_LOADERS+=prt0
  502. endif
  503. ifeq ($(FULL_TARGET),sparc-linux)
  504. override TARGET_LOADERS+=prt0
  505. endif
  506. ifeq ($(FULL_TARGET),sparc-netbsd)
  507. override TARGET_LOADERS+=prt0
  508. endif
  509. ifeq ($(FULL_TARGET),sparc-solaris)
  510. override TARGET_LOADERS+=prt0
  511. endif
  512. ifeq ($(FULL_TARGET),sparc-embedded)
  513. override TARGET_LOADERS+=prt0
  514. endif
  515. ifeq ($(FULL_TARGET),x86_64-linux)
  516. override TARGET_LOADERS+=prt0
  517. endif
  518. ifeq ($(FULL_TARGET),x86_64-freebsd)
  519. override TARGET_LOADERS+=prt0
  520. endif
  521. ifeq ($(FULL_TARGET),x86_64-win64)
  522. override TARGET_LOADERS+=prt0
  523. endif
  524. ifeq ($(FULL_TARGET),x86_64-embedded)
  525. override TARGET_LOADERS+=prt0
  526. endif
  527. ifeq ($(FULL_TARGET),arm-linux)
  528. override TARGET_LOADERS+=prt0
  529. endif
  530. ifeq ($(FULL_TARGET),arm-palmos)
  531. override TARGET_LOADERS+=prt0
  532. endif
  533. ifeq ($(FULL_TARGET),arm-wince)
  534. override TARGET_LOADERS+=prt0
  535. endif
  536. ifeq ($(FULL_TARGET),arm-gba)
  537. override TARGET_LOADERS+=prt0
  538. endif
  539. ifeq ($(FULL_TARGET),arm-nds)
  540. override TARGET_LOADERS+=prt0
  541. endif
  542. ifeq ($(FULL_TARGET),arm-embedded)
  543. override TARGET_LOADERS+=prt0
  544. endif
  545. ifeq ($(FULL_TARGET),arm-symbian)
  546. override TARGET_LOADERS+=prt0
  547. endif
  548. ifeq ($(FULL_TARGET),powerpc64-linux)
  549. override TARGET_LOADERS+=prt0
  550. endif
  551. ifeq ($(FULL_TARGET),powerpc64-embedded)
  552. override TARGET_LOADERS+=prt0
  553. endif
  554. override INSTALL_FPCPACKAGE=y
  555. ifeq ($(FULL_TARGET),i386-linux)
  556. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  557. endif
  558. ifeq ($(FULL_TARGET),i386-go32v2)
  559. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  560. endif
  561. ifeq ($(FULL_TARGET),i386-win32)
  562. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  563. endif
  564. ifeq ($(FULL_TARGET),i386-os2)
  565. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  566. endif
  567. ifeq ($(FULL_TARGET),i386-freebsd)
  568. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  569. endif
  570. ifeq ($(FULL_TARGET),i386-beos)
  571. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  572. endif
  573. ifeq ($(FULL_TARGET),i386-netbsd)
  574. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  575. endif
  576. ifeq ($(FULL_TARGET),i386-solaris)
  577. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  578. endif
  579. ifeq ($(FULL_TARGET),i386-qnx)
  580. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  581. endif
  582. ifeq ($(FULL_TARGET),i386-netware)
  583. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  584. endif
  585. ifeq ($(FULL_TARGET),i386-openbsd)
  586. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  587. endif
  588. ifeq ($(FULL_TARGET),i386-wdosx)
  589. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  590. endif
  591. ifeq ($(FULL_TARGET),i386-darwin)
  592. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  593. endif
  594. ifeq ($(FULL_TARGET),i386-emx)
  595. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  596. endif
  597. ifeq ($(FULL_TARGET),i386-watcom)
  598. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  599. endif
  600. ifeq ($(FULL_TARGET),i386-netwlibc)
  601. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  602. endif
  603. ifeq ($(FULL_TARGET),i386-wince)
  604. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  605. endif
  606. ifeq ($(FULL_TARGET),i386-embedded)
  607. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  608. endif
  609. ifeq ($(FULL_TARGET),i386-symbian)
  610. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  611. endif
  612. ifeq ($(FULL_TARGET),m68k-linux)
  613. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  614. endif
  615. ifeq ($(FULL_TARGET),m68k-freebsd)
  616. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  617. endif
  618. ifeq ($(FULL_TARGET),m68k-netbsd)
  619. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  620. endif
  621. ifeq ($(FULL_TARGET),m68k-amiga)
  622. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  623. endif
  624. ifeq ($(FULL_TARGET),m68k-atari)
  625. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  626. endif
  627. ifeq ($(FULL_TARGET),m68k-openbsd)
  628. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  629. endif
  630. ifeq ($(FULL_TARGET),m68k-palmos)
  631. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  632. endif
  633. ifeq ($(FULL_TARGET),m68k-embedded)
  634. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  635. endif
  636. ifeq ($(FULL_TARGET),powerpc-linux)
  637. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  638. endif
  639. ifeq ($(FULL_TARGET),powerpc-netbsd)
  640. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  641. endif
  642. ifeq ($(FULL_TARGET),powerpc-amiga)
  643. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  644. endif
  645. ifeq ($(FULL_TARGET),powerpc-macos)
  646. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  647. endif
  648. ifeq ($(FULL_TARGET),powerpc-darwin)
  649. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  650. endif
  651. ifeq ($(FULL_TARGET),powerpc-morphos)
  652. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  653. endif
  654. ifeq ($(FULL_TARGET),powerpc-embedded)
  655. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  656. endif
  657. ifeq ($(FULL_TARGET),sparc-linux)
  658. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  659. endif
  660. ifeq ($(FULL_TARGET),sparc-netbsd)
  661. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  662. endif
  663. ifeq ($(FULL_TARGET),sparc-solaris)
  664. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  665. endif
  666. ifeq ($(FULL_TARGET),sparc-embedded)
  667. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  668. endif
  669. ifeq ($(FULL_TARGET),x86_64-linux)
  670. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  671. endif
  672. ifeq ($(FULL_TARGET),x86_64-freebsd)
  673. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  674. endif
  675. ifeq ($(FULL_TARGET),x86_64-win64)
  676. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  677. endif
  678. ifeq ($(FULL_TARGET),x86_64-embedded)
  679. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  680. endif
  681. ifeq ($(FULL_TARGET),arm-linux)
  682. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  683. endif
  684. ifeq ($(FULL_TARGET),arm-palmos)
  685. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  686. endif
  687. ifeq ($(FULL_TARGET),arm-wince)
  688. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  689. endif
  690. ifeq ($(FULL_TARGET),arm-gba)
  691. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  692. endif
  693. ifeq ($(FULL_TARGET),arm-nds)
  694. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  695. endif
  696. ifeq ($(FULL_TARGET),arm-embedded)
  697. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  698. endif
  699. ifeq ($(FULL_TARGET),arm-symbian)
  700. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  701. endif
  702. ifeq ($(FULL_TARGET),powerpc64-linux)
  703. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  704. endif
  705. ifeq ($(FULL_TARGET),powerpc64-embedded)
  706. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(RTL)/palmos
  707. endif
  708. ifeq ($(FULL_TARGET),i386-linux)
  709. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  710. endif
  711. ifeq ($(FULL_TARGET),i386-go32v2)
  712. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  713. endif
  714. ifeq ($(FULL_TARGET),i386-win32)
  715. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  716. endif
  717. ifeq ($(FULL_TARGET),i386-os2)
  718. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  719. endif
  720. ifeq ($(FULL_TARGET),i386-freebsd)
  721. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  722. endif
  723. ifeq ($(FULL_TARGET),i386-beos)
  724. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  725. endif
  726. ifeq ($(FULL_TARGET),i386-netbsd)
  727. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  728. endif
  729. ifeq ($(FULL_TARGET),i386-solaris)
  730. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  731. endif
  732. ifeq ($(FULL_TARGET),i386-qnx)
  733. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  734. endif
  735. ifeq ($(FULL_TARGET),i386-netware)
  736. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  737. endif
  738. ifeq ($(FULL_TARGET),i386-openbsd)
  739. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  740. endif
  741. ifeq ($(FULL_TARGET),i386-wdosx)
  742. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  743. endif
  744. ifeq ($(FULL_TARGET),i386-darwin)
  745. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  746. endif
  747. ifeq ($(FULL_TARGET),i386-emx)
  748. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  749. endif
  750. ifeq ($(FULL_TARGET),i386-watcom)
  751. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  752. endif
  753. ifeq ($(FULL_TARGET),i386-netwlibc)
  754. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  755. endif
  756. ifeq ($(FULL_TARGET),i386-wince)
  757. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  758. endif
  759. ifeq ($(FULL_TARGET),i386-embedded)
  760. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  761. endif
  762. ifeq ($(FULL_TARGET),i386-symbian)
  763. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  764. endif
  765. ifeq ($(FULL_TARGET),m68k-linux)
  766. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  767. endif
  768. ifeq ($(FULL_TARGET),m68k-freebsd)
  769. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  770. endif
  771. ifeq ($(FULL_TARGET),m68k-netbsd)
  772. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  773. endif
  774. ifeq ($(FULL_TARGET),m68k-amiga)
  775. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  776. endif
  777. ifeq ($(FULL_TARGET),m68k-atari)
  778. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  779. endif
  780. ifeq ($(FULL_TARGET),m68k-openbsd)
  781. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  782. endif
  783. ifeq ($(FULL_TARGET),m68k-palmos)
  784. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  785. endif
  786. ifeq ($(FULL_TARGET),m68k-embedded)
  787. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  788. endif
  789. ifeq ($(FULL_TARGET),powerpc-linux)
  790. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  791. endif
  792. ifeq ($(FULL_TARGET),powerpc-netbsd)
  793. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  794. endif
  795. ifeq ($(FULL_TARGET),powerpc-amiga)
  796. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  797. endif
  798. ifeq ($(FULL_TARGET),powerpc-macos)
  799. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  800. endif
  801. ifeq ($(FULL_TARGET),powerpc-darwin)
  802. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  803. endif
  804. ifeq ($(FULL_TARGET),powerpc-morphos)
  805. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  806. endif
  807. ifeq ($(FULL_TARGET),powerpc-embedded)
  808. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  809. endif
  810. ifeq ($(FULL_TARGET),sparc-linux)
  811. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  812. endif
  813. ifeq ($(FULL_TARGET),sparc-netbsd)
  814. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  815. endif
  816. ifeq ($(FULL_TARGET),sparc-solaris)
  817. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  818. endif
  819. ifeq ($(FULL_TARGET),sparc-embedded)
  820. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  821. endif
  822. ifeq ($(FULL_TARGET),x86_64-linux)
  823. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  824. endif
  825. ifeq ($(FULL_TARGET),x86_64-freebsd)
  826. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  827. endif
  828. ifeq ($(FULL_TARGET),x86_64-win64)
  829. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  830. endif
  831. ifeq ($(FULL_TARGET),x86_64-embedded)
  832. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  833. endif
  834. ifeq ($(FULL_TARGET),arm-linux)
  835. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  836. endif
  837. ifeq ($(FULL_TARGET),arm-palmos)
  838. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  839. endif
  840. ifeq ($(FULL_TARGET),arm-wince)
  841. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  842. endif
  843. ifeq ($(FULL_TARGET),arm-gba)
  844. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  845. endif
  846. ifeq ($(FULL_TARGET),arm-nds)
  847. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  848. endif
  849. ifeq ($(FULL_TARGET),arm-embedded)
  850. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  851. endif
  852. ifeq ($(FULL_TARGET),arm-symbian)
  853. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  854. endif
  855. ifeq ($(FULL_TARGET),powerpc64-linux)
  856. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  857. endif
  858. ifeq ($(FULL_TARGET),powerpc64-embedded)
  859. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON)
  860. endif
  861. ifdef REQUIRE_UNITSDIR
  862. override UNITSDIR+=$(REQUIRE_UNITSDIR)
  863. endif
  864. ifdef REQUIRE_PACKAGESDIR
  865. override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
  866. endif
  867. ifdef ZIPINSTALL
  868. ifneq ($(findstring $(OS_TARGET),$(UNIXs)),)
  869. UNIXHier=1
  870. endif
  871. else
  872. ifneq ($(findstring $(OS_SOURCE),$(UNIXs)),)
  873. UNIXHier=1
  874. endif
  875. endif
  876. ifndef INSTALL_PREFIX
  877. ifdef PREFIX
  878. INSTALL_PREFIX=$(PREFIX)
  879. endif
  880. endif
  881. ifndef INSTALL_PREFIX
  882. ifdef UNIXHier
  883. INSTALL_PREFIX=/usr/local
  884. else
  885. ifdef INSTALL_FPCPACKAGE
  886. INSTALL_BASEDIR:=/pp
  887. else
  888. INSTALL_BASEDIR:=/$(PACKAGE_NAME)
  889. endif
  890. endif
  891. endif
  892. export INSTALL_PREFIX
  893. ifdef INSTALL_FPCSUBDIR
  894. export INSTALL_FPCSUBDIR
  895. endif
  896. ifndef DIST_DESTDIR
  897. DIST_DESTDIR:=$(BASEDIR)
  898. endif
  899. export DIST_DESTDIR
  900. ifndef COMPILER_UNITTARGETDIR
  901. ifdef PACKAGEDIR_MAIN
  902. COMPILER_UNITTARGETDIR=$(PACKAGEDIR_MAIN)/units/$(TARGETSUFFIX)
  903. else
  904. COMPILER_UNITTARGETDIR=units/$(TARGETSUFFIX)
  905. endif
  906. endif
  907. ifndef COMPILER_TARGETDIR
  908. COMPILER_TARGETDIR=.
  909. endif
  910. ifndef INSTALL_BASEDIR
  911. ifdef UNIXHier
  912. ifdef INSTALL_FPCPACKAGE
  913. INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/fpc/$(FPC_VERSION)
  914. else
  915. INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/$(PACKAGE_NAME)
  916. endif
  917. else
  918. INSTALL_BASEDIR:=$(INSTALL_PREFIX)
  919. endif
  920. endif
  921. ifndef INSTALL_BINDIR
  922. ifdef UNIXHier
  923. INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
  924. else
  925. INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
  926. ifdef INSTALL_FPCPACKAGE
  927. ifdef CROSSCOMPILE
  928. ifdef CROSSINSTALL
  929. INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(SOURCESUFFIX)
  930. else
  931. INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(TARGETSUFFIX)
  932. endif
  933. else
  934. INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(TARGETSUFFIX)
  935. endif
  936. endif
  937. endif
  938. endif
  939. ifndef INSTALL_UNITDIR
  940. INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(TARGETSUFFIX)
  941. ifdef INSTALL_FPCPACKAGE
  942. ifdef PACKAGE_NAME
  943. INSTALL_UNITDIR:=$(INSTALL_UNITDIR)/$(PACKAGE_NAME)
  944. endif
  945. endif
  946. endif
  947. ifndef INSTALL_LIBDIR
  948. ifdef UNIXHier
  949. INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
  950. else
  951. INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
  952. endif
  953. endif
  954. ifndef INSTALL_SOURCEDIR
  955. ifdef UNIXHier
  956. ifdef BSDhier
  957. SRCPREFIXDIR=share/src
  958. else
  959. ifdef linuxHier
  960. SRCPREFIXDIR=share/src
  961. else
  962. SRCPREFIXDIR=src
  963. endif
  964. endif
  965. ifdef INSTALL_FPCPACKAGE
  966. ifdef INSTALL_FPCSUBDIR
  967. INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
  968. else
  969. INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
  970. endif
  971. else
  972. INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  973. endif
  974. else
  975. ifdef INSTALL_FPCPACKAGE
  976. ifdef INSTALL_FPCSUBDIR
  977. INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
  978. else
  979. INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(PACKAGE_NAME)
  980. endif
  981. else
  982. INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source
  983. endif
  984. endif
  985. endif
  986. ifndef INSTALL_DOCDIR
  987. ifdef UNIXHier
  988. ifdef BSDhier
  989. DOCPREFIXDIR=share/doc
  990. else
  991. ifdef linuxHier
  992. DOCPREFIXDIR=share/doc
  993. else
  994. DOCPREFIXDIR=doc
  995. endif
  996. endif
  997. ifdef INSTALL_FPCPACKAGE
  998. INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
  999. else
  1000. INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  1001. endif
  1002. else
  1003. ifdef INSTALL_FPCPACKAGE
  1004. INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc/$(PACKAGE_NAME)
  1005. else
  1006. INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc
  1007. endif
  1008. endif
  1009. endif
  1010. ifndef INSTALL_EXAMPLEDIR
  1011. ifdef UNIXHier
  1012. ifdef INSTALL_FPCPACKAGE
  1013. ifdef BSDhier
  1014. INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
  1015. else
  1016. ifdef linuxHier
  1017. INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples
  1018. else
  1019. INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
  1020. endif
  1021. endif
  1022. else
  1023. ifdef BSDhier
  1024. INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  1025. else
  1026. ifdef linuxHier
  1027. INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  1028. else
  1029. INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  1030. endif
  1031. endif
  1032. endif
  1033. else
  1034. ifdef INSTALL_FPCPACKAGE
  1035. INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples/$(PACKAGE_NAME)
  1036. else
  1037. INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples
  1038. endif
  1039. endif
  1040. endif
  1041. ifndef INSTALL_DATADIR
  1042. INSTALL_DATADIR=$(INSTALL_BASEDIR)
  1043. endif
  1044. ifndef INSTALL_SHAREDDIR
  1045. INSTALL_SHAREDDIR=$(INSTALL_PREFIX)/lib
  1046. endif
  1047. ifdef CROSSCOMPILE
  1048. ifndef CROSSBINDIR
  1049. CROSSBINDIR:=$(wildcard $(CROSSTARGETDIR)/bin/$(SOURCESUFFIX))
  1050. ifeq ($(CROSSBINDIR),)
  1051. CROSSBINDIR:=$(wildcard $(INSTALL_BASEDIR)/cross/$(TARGETSUFFIX)/bin/$(FULL_SOURCE))
  1052. endif
  1053. endif
  1054. else
  1055. CROSSBINDIR=
  1056. endif
  1057. BATCHEXT=.bat
  1058. LOADEREXT=.as
  1059. EXEEXT=.exe
  1060. PPLEXT=.ppl
  1061. PPUEXT=.ppu
  1062. OEXT=.o
  1063. ASMEXT=.s
  1064. SMARTEXT=.sl
  1065. STATICLIBEXT=.a
  1066. SHAREDLIBEXT=.so
  1067. SHAREDLIBPREFIX=libfp
  1068. STATICLIBPREFIX=libp
  1069. IMPORTLIBPREFIX=libimp
  1070. RSTEXT=.rst
  1071. ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
  1072. ifeq ($(OS_TARGET),go32v1)
  1073. STATICLIBPREFIX=
  1074. SHORTSUFFIX=v1
  1075. endif
  1076. ifeq ($(OS_TARGET),go32v2)
  1077. STATICLIBPREFIX=
  1078. SHORTSUFFIX=dos
  1079. endif
  1080. ifeq ($(OS_TARGET),watcom)
  1081. STATICLIBPREFIX=
  1082. OEXT=.obj
  1083. ASMEXT=.asm
  1084. SHAREDLIBEXT=.dll
  1085. SHORTSUFFIX=wat
  1086. endif
  1087. ifeq ($(OS_TARGET),linux)
  1088. BATCHEXT=.sh
  1089. EXEEXT=
  1090. HASSHAREDLIB=1
  1091. SHORTSUFFIX=lnx
  1092. endif
  1093. ifeq ($(OS_TARGET),freebsd)
  1094. BATCHEXT=.sh
  1095. EXEEXT=
  1096. HASSHAREDLIB=1
  1097. SHORTSUFFIX=fbs
  1098. endif
  1099. ifeq ($(OS_TARGET),netbsd)
  1100. BATCHEXT=.sh
  1101. EXEEXT=
  1102. HASSHAREDLIB=1
  1103. SHORTSUFFIX=nbs
  1104. endif
  1105. ifeq ($(OS_TARGET),openbsd)
  1106. BATCHEXT=.sh
  1107. EXEEXT=
  1108. HASSHAREDLIB=1
  1109. SHORTSUFFIX=obs
  1110. endif
  1111. ifeq ($(OS_TARGET),win32)
  1112. SHAREDLIBEXT=.dll
  1113. SHORTSUFFIX=w32
  1114. endif
  1115. ifeq ($(OS_TARGET),os2)
  1116. BATCHEXT=.cmd
  1117. AOUTEXT=.out
  1118. STATICLIBPREFIX=
  1119. SHAREDLIBEXT=.dll
  1120. SHORTSUFFIX=os2
  1121. ECHO=echo
  1122. endif
  1123. ifeq ($(OS_TARGET),emx)
  1124. BATCHEXT=.cmd
  1125. AOUTEXT=.out
  1126. STATICLIBPREFIX=
  1127. SHAREDLIBEXT=.dll
  1128. SHORTSUFFIX=emx
  1129. ECHO=echo
  1130. endif
  1131. ifeq ($(OS_TARGET),amiga)
  1132. EXEEXT=
  1133. SHAREDLIBEXT=.library
  1134. SHORTSUFFIX=amg
  1135. endif
  1136. ifeq ($(OS_TARGET),morphos)
  1137. EXEEXT=
  1138. SHAREDLIBEXT=.library
  1139. SHORTSUFFIX=mos
  1140. endif
  1141. ifeq ($(OS_TARGET),atari)
  1142. EXEEXT=.ttp
  1143. SHORTSUFFIX=ata
  1144. endif
  1145. ifeq ($(OS_TARGET),beos)
  1146. BATCHEXT=.sh
  1147. EXEEXT=
  1148. SHORTSUFFIX=be
  1149. endif
  1150. ifeq ($(OS_TARGET),solaris)
  1151. BATCHEXT=.sh
  1152. EXEEXT=
  1153. SHORTSUFFIX=sun
  1154. endif
  1155. ifeq ($(OS_TARGET),qnx)
  1156. BATCHEXT=.sh
  1157. EXEEXT=
  1158. SHORTSUFFIX=qnx
  1159. endif
  1160. ifeq ($(OS_TARGET),netware)
  1161. EXEEXT=.nlm
  1162. STATICLIBPREFIX=
  1163. SHORTSUFFIX=nw
  1164. endif
  1165. ifeq ($(OS_TARGET),netwlibc)
  1166. EXEEXT=.nlm
  1167. STATICLIBPREFIX=
  1168. SHORTSUFFIX=nwl
  1169. endif
  1170. ifeq ($(OS_TARGET),macos)
  1171. BATCHEXT=
  1172. EXEEXT=
  1173. DEBUGSYMEXT=.xcoff
  1174. SHORTSUFFIX=mac
  1175. endif
  1176. ifeq ($(OS_TARGET),darwin)
  1177. BATCHEXT=.sh
  1178. EXEEXT=
  1179. HASSHAREDLIB=1
  1180. SHORTSUFFIX=dwn
  1181. endif
  1182. ifeq ($(OS_TARGET),gba)
  1183. EXEEXT=.gba
  1184. SHAREDLIBEXT=.so
  1185. SHORTSUFFIX=gba
  1186. endif
  1187. ifeq ($(OS_TARGET),symbian)
  1188. SHAREDLIBEXT=.dll
  1189. SHORTSUFFIX=symbian
  1190. endif
  1191. else
  1192. ifeq ($(OS_TARGET),go32v1)
  1193. PPUEXT=.pp1
  1194. OEXT=.o1
  1195. ASMEXT=.s1
  1196. SMARTEXT=.sl1
  1197. STATICLIBEXT=.a1
  1198. SHAREDLIBEXT=.so1
  1199. STATICLIBPREFIX=
  1200. SHORTSUFFIX=v1
  1201. endif
  1202. ifeq ($(OS_TARGET),go32v2)
  1203. STATICLIBPREFIX=
  1204. SHORTSUFFIX=dos
  1205. endif
  1206. ifeq ($(OS_TARGET),watcom)
  1207. STATICLIBPREFIX=
  1208. SHORTSUFFIX=wat
  1209. endif
  1210. ifeq ($(OS_TARGET),linux)
  1211. BATCHEXT=.sh
  1212. EXEEXT=
  1213. HASSHAREDLIB=1
  1214. SHORTSUFFIX=lnx
  1215. endif
  1216. ifeq ($(OS_TARGET),freebsd)
  1217. BATCHEXT=.sh
  1218. EXEEXT=
  1219. HASSHAREDLIB=1
  1220. SHORTSUFFIX=fbs
  1221. endif
  1222. ifeq ($(OS_TARGET),netbsd)
  1223. BATCHEXT=.sh
  1224. EXEEXT=
  1225. HASSHAREDLIB=1
  1226. SHORTSUFFIX=nbs
  1227. endif
  1228. ifeq ($(OS_TARGET),openbsd)
  1229. BATCHEXT=.sh
  1230. EXEEXT=
  1231. HASSHAREDLIB=1
  1232. SHORTSUFFIX=obs
  1233. endif
  1234. ifeq ($(OS_TARGET),win32)
  1235. PPUEXT=.ppw
  1236. OEXT=.ow
  1237. ASMEXT=.sw
  1238. SMARTEXT=.slw
  1239. STATICLIBEXT=.aw
  1240. SHAREDLIBEXT=.dll
  1241. SHORTSUFFIX=w32
  1242. endif
  1243. ifeq ($(OS_TARGET),os2)
  1244. BATCHEXT=.cmd
  1245. PPUEXT=.ppo
  1246. ASMEXT=.so2
  1247. OEXT=.oo2
  1248. AOUTEXT=.out
  1249. SMARTEXT=.sl2
  1250. STATICLIBPREFIX=
  1251. STATICLIBEXT=.ao2
  1252. SHAREDLIBEXT=.dll
  1253. SHORTSUFFIX=os2
  1254. ECHO=echo
  1255. endif
  1256. ifeq ($(OS_TARGET),amiga)
  1257. EXEEXT=
  1258. PPUEXT=.ppu
  1259. ASMEXT=.s
  1260. OEXT=.o
  1261. SMARTEXT=.sl
  1262. STATICLIBEXT=.a
  1263. SHAREDLIBEXT=.library
  1264. SHORTSUFFIX=amg
  1265. endif
  1266. ifeq ($(OS_TARGET),atari)
  1267. PPUEXT=.ppu
  1268. ASMEXT=.s
  1269. OEXT=.o
  1270. SMARTEXT=.sl
  1271. STATICLIBEXT=.a
  1272. EXEEXT=.ttp
  1273. SHORTSUFFIX=ata
  1274. endif
  1275. ifeq ($(OS_TARGET),beos)
  1276. BATCHEXT=.sh
  1277. PPUEXT=.ppu
  1278. ASMEXT=.s
  1279. OEXT=.o
  1280. SMARTEXT=.sl
  1281. STATICLIBEXT=.a
  1282. EXEEXT=
  1283. SHORTSUFFIX=be
  1284. endif
  1285. ifeq ($(OS_TARGET),solaris)
  1286. BATCHEXT=.sh
  1287. PPUEXT=.ppu
  1288. ASMEXT=.s
  1289. OEXT=.o
  1290. SMARTEXT=.sl
  1291. STATICLIBEXT=.a
  1292. EXEEXT=
  1293. SHORTSUFFIX=sun
  1294. endif
  1295. ifeq ($(OS_TARGET),qnx)
  1296. BATCHEXT=.sh
  1297. PPUEXT=.ppu
  1298. ASMEXT=.s
  1299. OEXT=.o
  1300. SMARTEXT=.sl
  1301. STATICLIBEXT=.a
  1302. EXEEXT=
  1303. SHORTSUFFIX=qnx
  1304. endif
  1305. ifeq ($(OS_TARGET),netware)
  1306. STATICLIBPREFIX=
  1307. PPUEXT=.ppu
  1308. OEXT=.o
  1309. ASMEXT=.s
  1310. SMARTEXT=.sl
  1311. STATICLIBEXT=.a
  1312. SHAREDLIBEXT=.nlm
  1313. EXEEXT=.nlm
  1314. SHORTSUFFIX=nw
  1315. endif
  1316. ifeq ($(OS_TARGET),netwlibc)
  1317. STATICLIBPREFIX=
  1318. PPUEXT=.ppu
  1319. OEXT=.o
  1320. ASMEXT=.s
  1321. SMARTEXT=.sl
  1322. STATICLIBEXT=.a
  1323. SHAREDLIBEXT=.nlm
  1324. EXEEXT=.nlm
  1325. SHORTSUFFIX=nwl
  1326. endif
  1327. ifeq ($(OS_TARGET),macos)
  1328. BATCHEXT=
  1329. PPUEXT=.ppu
  1330. ASMEXT=.s
  1331. OEXT=.o
  1332. SMARTEXT=.sl
  1333. STATICLIBEXT=.a
  1334. EXEEXT=
  1335. DEBUGSYMEXT=.xcoff
  1336. SHORTSUFFIX=mac
  1337. endif
  1338. endif
  1339. ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),)
  1340. FPCMADE=fpcmade.$(SHORTSUFFIX)
  1341. ZIPSUFFIX=$(SHORTSUFFIX)
  1342. ZIPCROSSPREFIX=
  1343. ZIPSOURCESUFFIX=src
  1344. ZIPEXAMPLESUFFIX=exm
  1345. else
  1346. FPCMADE=fpcmade.$(TARGETSUFFIX)
  1347. ZIPSOURCESUFFIX=.source
  1348. ZIPEXAMPLESUFFIX=.examples
  1349. ifdef CROSSCOMPILE
  1350. ZIPSUFFIX=.$(SOURCESUFFIX)
  1351. ZIPCROSSPREFIX=$(TARGETSUFFIX)-
  1352. else
  1353. ZIPSUFFIX=.$(TARGETSUFFIX)
  1354. ZIPCROSSPREFIX=
  1355. endif
  1356. endif
  1357. ifndef ECHO
  1358. ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
  1359. ifeq ($(ECHO),)
  1360. ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
  1361. ifeq ($(ECHO),)
  1362. ECHO= __missing_command_ECHO
  1363. else
  1364. ECHO:=$(firstword $(ECHO))
  1365. endif
  1366. else
  1367. ECHO:=$(firstword $(ECHO))
  1368. endif
  1369. endif
  1370. export ECHO
  1371. ifndef DATE
  1372. DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEARCHPATH))))
  1373. ifeq ($(DATE),)
  1374. DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH))))
  1375. ifeq ($(DATE),)
  1376. DATE= __missing_command_DATE
  1377. else
  1378. DATE:=$(firstword $(DATE))
  1379. endif
  1380. else
  1381. DATE:=$(firstword $(DATE))
  1382. endif
  1383. endif
  1384. export DATE
  1385. ifndef GINSTALL
  1386. GINSTALL:=$(strip $(wildcard $(addsuffix /ginstall$(SRCEXEEXT),$(SEARCHPATH))))
  1387. ifeq ($(GINSTALL),)
  1388. GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH))))
  1389. ifeq ($(GINSTALL),)
  1390. GINSTALL= __missing_command_GINSTALL
  1391. else
  1392. GINSTALL:=$(firstword $(GINSTALL))
  1393. endif
  1394. else
  1395. GINSTALL:=$(firstword $(GINSTALL))
  1396. endif
  1397. endif
  1398. export GINSTALL
  1399. ifndef CPPROG
  1400. CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH))))
  1401. ifeq ($(CPPROG),)
  1402. CPPROG= __missing_command_CPPROG
  1403. else
  1404. CPPROG:=$(firstword $(CPPROG))
  1405. endif
  1406. endif
  1407. export CPPROG
  1408. ifndef RMPROG
  1409. RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
  1410. ifeq ($(RMPROG),)
  1411. RMPROG= __missing_command_RMPROG
  1412. else
  1413. RMPROG:=$(firstword $(RMPROG))
  1414. endif
  1415. endif
  1416. export RMPROG
  1417. ifndef MVPROG
  1418. MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
  1419. ifeq ($(MVPROG),)
  1420. MVPROG= __missing_command_MVPROG
  1421. else
  1422. MVPROG:=$(firstword $(MVPROG))
  1423. endif
  1424. endif
  1425. export MVPROG
  1426. ifndef MKDIRPROG
  1427. MKDIRPROG:=$(strip $(wildcard $(addsuffix /gmkdir$(SRCEXEEXT),$(SEARCHPATH))))
  1428. ifeq ($(MKDIRPROG),)
  1429. MKDIRPROG:=$(strip $(wildcard $(addsuffix /mkdir$(SRCEXEEXT),$(SEARCHPATH))))
  1430. ifeq ($(MKDIRPROG),)
  1431. MKDIRPROG= __missing_command_MKDIRPROG
  1432. else
  1433. MKDIRPROG:=$(firstword $(MKDIRPROG))
  1434. endif
  1435. else
  1436. MKDIRPROG:=$(firstword $(MKDIRPROG))
  1437. endif
  1438. endif
  1439. export MKDIRPROG
  1440. ifndef ECHOREDIR
  1441. ifndef inUnix
  1442. ECHOREDIR=echo
  1443. else
  1444. ECHOREDIR=$(ECHO)
  1445. endif
  1446. endif
  1447. ifndef COPY
  1448. COPY:=$(CPPROG) -fp
  1449. endif
  1450. ifndef COPYTREE
  1451. COPYTREE:=$(CPPROG) -Rfp
  1452. endif
  1453. ifndef MKDIRTREE
  1454. MKDIRTREE:=$(MKDIRPROG) -p
  1455. endif
  1456. ifndef MOVE
  1457. MOVE:=$(MVPROG) -f
  1458. endif
  1459. ifndef DEL
  1460. DEL:=$(RMPROG) -f
  1461. endif
  1462. ifndef DELTREE
  1463. DELTREE:=$(RMPROG) -rf
  1464. endif
  1465. ifndef INSTALL
  1466. ifdef inUnix
  1467. INSTALL:=$(GINSTALL) -c -m 644
  1468. else
  1469. INSTALL:=$(COPY)
  1470. endif
  1471. endif
  1472. ifndef INSTALLEXE
  1473. ifdef inUnix
  1474. INSTALLEXE:=$(GINSTALL) -c -m 755
  1475. else
  1476. INSTALLEXE:=$(COPY)
  1477. endif
  1478. endif
  1479. ifndef MKDIR
  1480. MKDIR:=$(GINSTALL) -m 755 -d
  1481. endif
  1482. export ECHOREDIR COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR
  1483. ifndef PPUMOVE
  1484. PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH))))
  1485. ifeq ($(PPUMOVE),)
  1486. PPUMOVE= __missing_command_PPUMOVE
  1487. else
  1488. PPUMOVE:=$(firstword $(PPUMOVE))
  1489. endif
  1490. endif
  1491. export PPUMOVE
  1492. ifndef FPCMAKE
  1493. FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
  1494. ifeq ($(FPCMAKE),)
  1495. FPCMAKE= __missing_command_FPCMAKE
  1496. else
  1497. FPCMAKE:=$(firstword $(FPCMAKE))
  1498. endif
  1499. endif
  1500. export FPCMAKE
  1501. ifndef ZIPPROG
  1502. ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
  1503. ifeq ($(ZIPPROG),)
  1504. ZIPPROG= __missing_command_ZIPPROG
  1505. else
  1506. ZIPPROG:=$(firstword $(ZIPPROG))
  1507. endif
  1508. endif
  1509. export ZIPPROG
  1510. ifndef TARPROG
  1511. TARPROG:=$(strip $(wildcard $(addsuffix /gtar$(SRCEXEEXT),$(SEARCHPATH))))
  1512. ifeq ($(TARPROG),)
  1513. TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
  1514. ifeq ($(TARPROG),)
  1515. TARPROG= __missing_command_TARPROG
  1516. else
  1517. TARPROG:=$(firstword $(TARPROG))
  1518. endif
  1519. else
  1520. TARPROG:=$(firstword $(TARPROG))
  1521. endif
  1522. endif
  1523. export TARPROG
  1524. ASNAME=$(BINUTILSPREFIX)as
  1525. LDNAME=$(BINUTILSPREFIX)ld
  1526. ARNAME=$(BINUTILSPREFIX)ar
  1527. RCNAME=$(BINUTILSPREFIX)rc
  1528. ifneq ($(findstring 1.0.,$(FPC_VERSION)),)
  1529. ifeq ($(OS_TARGET),win32)
  1530. ifeq ($(CROSSBINDIR),)
  1531. ASNAME=asw
  1532. LDNAME=ldw
  1533. ARNAME=arw
  1534. endif
  1535. endif
  1536. endif
  1537. ifndef ASPROG
  1538. ifdef CROSSBINDIR
  1539. ASPROG=$(CROSSBINDIR)/$(ASNAME)$(SRCEXEEXT)
  1540. else
  1541. ASPROG=$(ASNAME)
  1542. endif
  1543. endif
  1544. ifndef LDPROG
  1545. ifdef CROSSBINDIR
  1546. LDPROG=$(CROSSBINDIR)/$(LDNAME)$(SRCEXEEXT)
  1547. else
  1548. LDPROG=$(LDNAME)
  1549. endif
  1550. endif
  1551. ifndef RCPROG
  1552. ifdef CROSSBINDIR
  1553. RCPROG=$(CROSSBINDIR)/$(RCNAME)$(SRCEXEEXT)
  1554. else
  1555. RCPROG=$(RCNAME)
  1556. endif
  1557. endif
  1558. ifndef ARPROG
  1559. ifdef CROSSBINDIR
  1560. ARPROG=$(CROSSBINDIR)/$(ARNAME)$(SRCEXEEXT)
  1561. else
  1562. ARPROG=$(ARNAME)
  1563. endif
  1564. endif
  1565. AS=$(ASPROG)
  1566. LD=$(LDPROG)
  1567. RC=$(RCPROG)
  1568. AR=$(ARPROG)
  1569. PPAS=ppas$(SRCBATCHEXT)
  1570. ifdef inUnix
  1571. LDCONFIG=ldconfig
  1572. else
  1573. LDCONFIG=
  1574. endif
  1575. ifdef DATE
  1576. DATESTR:=$(shell $(DATE) +%Y%m%d)
  1577. else
  1578. DATESTR=
  1579. endif
  1580. ifndef UPXPROG
  1581. ifeq ($(OS_TARGET),go32v2)
  1582. UPXPROG:=1
  1583. endif
  1584. ifeq ($(OS_TARGET),win32)
  1585. UPXPROG:=1
  1586. endif
  1587. ifdef UPXPROG
  1588. UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH))))
  1589. ifeq ($(UPXPROG),)
  1590. UPXPROG=
  1591. else
  1592. UPXPROG:=$(firstword $(UPXPROG))
  1593. endif
  1594. else
  1595. UPXPROG=
  1596. endif
  1597. endif
  1598. export UPXPROG
  1599. ZIPOPT=-9
  1600. ZIPEXT=.zip
  1601. ifeq ($(USETAR),bz2)
  1602. TAROPT=vj
  1603. TAREXT=.tar.bz2
  1604. else
  1605. TAROPT=vz
  1606. TAREXT=.tar.gz
  1607. endif
  1608. ifndef NOCPUDEF
  1609. override FPCOPTDEF=$(CPU_TARGET)
  1610. endif
  1611. ifneq ($(OS_TARGET),$(OS_SOURCE))
  1612. override FPCOPT+=-T$(OS_TARGET)
  1613. endif
  1614. ifneq ($(CPU_TARGET),$(CPU_SOURCE))
  1615. override FPCOPT+=-P$(CPU_TARGET)
  1616. endif
  1617. ifeq ($(OS_SOURCE),openbsd)
  1618. override FPCOPT+=-FD$(NEW_BINUTILS_PATH)
  1619. endif
  1620. ifndef CROSSBOOTSTRAP
  1621. ifneq ($(BINUTILSPREFIX),)
  1622. override FPCOPT+=-XP$(BINUTILSPREFIX)
  1623. endif
  1624. ifneq ($(BINUTILSPREFIX),)
  1625. override FPCOPT+=-Xr$(RLINKPATH)
  1626. endif
  1627. endif
  1628. ifdef UNITDIR
  1629. override FPCOPT+=$(addprefix -Fu,$(UNITDIR))
  1630. endif
  1631. ifdef LIBDIR
  1632. override FPCOPT+=$(addprefix -Fl,$(LIBDIR))
  1633. endif
  1634. ifdef OBJDIR
  1635. override FPCOPT+=$(addprefix -Fo,$(OBJDIR))
  1636. endif
  1637. ifdef INCDIR
  1638. override FPCOPT+=$(addprefix -Fi,$(INCDIR))
  1639. endif
  1640. ifdef LINKSMART
  1641. override FPCOPT+=-XX
  1642. endif
  1643. ifdef CREATESMART
  1644. override FPCOPT+=-CX
  1645. endif
  1646. ifdef DEBUG
  1647. override FPCOPT+=-gl
  1648. override FPCOPTDEF+=DEBUG
  1649. endif
  1650. ifdef RELEASE
  1651. ifneq ($(findstring 2.0.,$(FPC_VERSION)),)
  1652. ifeq ($(CPU_TARGET),i386)
  1653. FPCCPUOPT:=-OG2p3
  1654. endif
  1655. ifeq ($(CPU_TARGET),powerpc)
  1656. FPCCPUOPT:=-O1r
  1657. endif
  1658. else
  1659. FPCCPUOPT:=-O2
  1660. endif
  1661. override FPCOPT+=-Ur -Xs $(FPCCPUOPT) -n
  1662. override FPCOPTDEF+=RELEASE
  1663. endif
  1664. ifdef STRIP
  1665. override FPCOPT+=-Xs
  1666. endif
  1667. ifdef OPTIMIZE
  1668. override FPCOPT+=-O2
  1669. endif
  1670. ifdef VERBOSE
  1671. override FPCOPT+=-vwni
  1672. endif
  1673. ifdef COMPILER_OPTIONS
  1674. override FPCOPT+=$(COMPILER_OPTIONS)
  1675. endif
  1676. ifdef COMPILER_UNITDIR
  1677. override FPCOPT+=$(addprefix -Fu,$(COMPILER_UNITDIR))
  1678. endif
  1679. ifdef COMPILER_LIBRARYDIR
  1680. override FPCOPT+=$(addprefix -Fl,$(COMPILER_LIBRARYDIR))
  1681. endif
  1682. ifdef COMPILER_OBJECTDIR
  1683. override FPCOPT+=$(addprefix -Fo,$(COMPILER_OBJECTDIR))
  1684. endif
  1685. ifdef COMPILER_INCLUDEDIR
  1686. override FPCOPT+=$(addprefix -Fi,$(COMPILER_INCLUDEDIR))
  1687. endif
  1688. ifdef CROSSBINDIR
  1689. override FPCOPT+=-FD$(CROSSBINDIR)
  1690. endif
  1691. ifdef COMPILER_TARGETDIR
  1692. override FPCOPT+=-FE$(COMPILER_TARGETDIR)
  1693. ifeq ($(COMPILER_TARGETDIR),.)
  1694. override TARGETDIRPREFIX=
  1695. else
  1696. override TARGETDIRPREFIX=$(COMPILER_TARGETDIR)/
  1697. endif
  1698. endif
  1699. ifdef COMPILER_UNITTARGETDIR
  1700. override FPCOPT+=-FU$(COMPILER_UNITTARGETDIR)
  1701. ifeq ($(COMPILER_UNITTARGETDIR),.)
  1702. override UNITTARGETDIRPREFIX=
  1703. else
  1704. override UNITTARGETDIRPREFIX=$(COMPILER_UNITTARGETDIR)/
  1705. endif
  1706. else
  1707. ifdef COMPILER_TARGETDIR
  1708. override COMPILER_UNITTARGETDIR=$(COMPILER_TARGETDIR)
  1709. override UNITTARGETDIRPREFIX=$(TARGETDIRPREFIX)
  1710. endif
  1711. endif
  1712. ifdef CREATESHARED
  1713. override FPCOPT+=-Cg
  1714. ifeq ($(CPU_TARGET),i386)
  1715. override FPCOPT+=-Aas
  1716. endif
  1717. endif
  1718. ifeq ($(findstring 2.0.,$(FPC_VERSION)),)
  1719. ifeq ($(OS_TARGET),linux)
  1720. ifeq ($(CPU_TARGET),x86_64)
  1721. override FPCOPT+=-Cg
  1722. endif
  1723. endif
  1724. endif
  1725. ifdef LINKSHARED
  1726. endif
  1727. ifdef OPT
  1728. override FPCOPT+=$(OPT)
  1729. endif
  1730. ifdef FPCOPTDEF
  1731. override FPCOPT+=$(addprefix -d,$(FPCOPTDEF))
  1732. endif
  1733. ifdef CFGFILE
  1734. override FPCOPT+=@$(CFGFILE)
  1735. endif
  1736. ifdef USEENV
  1737. override FPCEXTCMD:=$(FPCOPT)
  1738. override FPCOPT:=!FPCEXTCMD
  1739. export FPCEXTCMD
  1740. endif
  1741. override AFULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
  1742. override AFULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)
  1743. ifneq ($(AFULL_TARGET),$(AFULL_SOURCE))
  1744. override ACROSSCOMPILE=1
  1745. endif
  1746. ifdef ACROSSCOMPILE
  1747. override FPCOPT+=$(CROSSOPT)
  1748. endif
  1749. override COMPILER:=$(FPC) $(FPCOPT)
  1750. ifeq (,$(findstring -s ,$(COMPILER)))
  1751. EXECPPAS=
  1752. else
  1753. ifeq ($(FULL_SOURCE),$(FULL_TARGET))
  1754. EXECPPAS:=@$(PPAS)
  1755. endif
  1756. endif
  1757. .PHONY: fpc_loaders
  1758. ifneq ($(TARGET_LOADERS),)
  1759. override ALLTARGET+=fpc_loaders
  1760. override CLEANTARGET+=fpc_loaders_clean
  1761. override INSTALLTARGET+=fpc_loaders_install
  1762. override LOADEROFILES:=$(addsuffix $(OEXT),$(TARGET_LOADERS))
  1763. endif
  1764. %$(OEXT): %$(LOADEREXT)
  1765. ifdef COMPILER_UNITTARGETDIR
  1766. $(AS) -o $(COMPILER_UNITTARGETDIR)/$*$(OEXT) $<
  1767. else
  1768. $(AS) -o $*$(OEXT) $<
  1769. endif
  1770. fpc_loaders: $(COMPILER_UNITTARGETDIR) $(LOADEROFILES)
  1771. fpc_loaders_clean:
  1772. ifdef COMPILER_UNITTARGETDIR
  1773. -$(DEL) $(addprefix $(COMPILER_UNITTARGETDIR)/,$(LOADEROFILES))
  1774. else
  1775. -$(DEL) $(LOADEROFILES)
  1776. endif
  1777. fpc_loaders_install:
  1778. $(MKDIR) $(INSTALL_UNITDIR)
  1779. ifdef COMPILER_UNITTARGETDIR
  1780. $(INSTALL) $(addprefix $(COMPILER_UNITTARGETDIR)/,$(LOADEROFILES)) $(INSTALL_UNITDIR)
  1781. else
  1782. $(INSTALL) $(LOADEROFILES) $(INSTALL_UNITDIR)
  1783. endif
  1784. .PHONY: fpc_units
  1785. ifneq ($(TARGET_UNITS),)
  1786. override ALLTARGET+=fpc_units
  1787. override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
  1788. override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
  1789. override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
  1790. override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
  1791. endif
  1792. fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES)
  1793. ifdef TARGET_RSTS
  1794. override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))
  1795. override CLEANRSTFILES+=$(RSTFILES)
  1796. endif
  1797. .PHONY: fpc_all fpc_smart fpc_debug fpc_release fpc_shared
  1798. $(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET)
  1799. @$(ECHOREDIR) Compiled > $(FPCMADE)
  1800. fpc_all: $(FPCMADE)
  1801. fpc_smart:
  1802. $(MAKE) all LINKSMART=1 CREATESMART=1
  1803. fpc_debug:
  1804. $(MAKE) all DEBUG=1
  1805. fpc_release:
  1806. $(MAKE) all RELEASE=1
  1807. .SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res
  1808. $(COMPILER_UNITTARGETDIR):
  1809. $(MKDIRTREE) $(COMPILER_UNITTARGETDIR)
  1810. $(COMPILER_TARGETDIR):
  1811. $(MKDIRTREE) $(COMPILER_TARGETDIR)
  1812. %$(PPUEXT): %.pp
  1813. $(COMPILER) $<
  1814. $(EXECPPAS)
  1815. %$(PPUEXT): %.pas
  1816. $(COMPILER) $<
  1817. $(EXECPPAS)
  1818. %$(EXEEXT): %.pp
  1819. $(COMPILER) $<
  1820. $(EXECPPAS)
  1821. %$(EXEEXT): %.pas
  1822. $(COMPILER) $<
  1823. $(EXECPPAS)
  1824. %$(EXEEXT): %.lpr
  1825. $(COMPILER) $<
  1826. $(EXECPPAS)
  1827. %$(EXEEXT): %.dpr
  1828. $(COMPILER) $<
  1829. $(EXECPPAS)
  1830. %.res: %.rc
  1831. windres -i $< -o $@
  1832. vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
  1833. vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
  1834. vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
  1835. vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
  1836. vpath %.inc $(COMPILER_INCLUDEDIR)
  1837. vpath %$(OEXT) $(COMPILER_UNITTARGETDIR)
  1838. vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
  1839. .PHONY: fpc_shared
  1840. override INSTALLTARGET+=fpc_shared_install
  1841. ifndef SHARED_LIBVERSION
  1842. SHARED_LIBVERSION=$(FPC_VERSION)
  1843. endif
  1844. ifndef SHARED_LIBNAME
  1845. SHARED_LIBNAME=$(PACKAGE_NAME)
  1846. endif
  1847. ifndef SHARED_FULLNAME
  1848. SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSION)$(SHAREDLIBEXT)
  1849. endif
  1850. ifndef SHARED_LIBUNITS
  1851. SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS)
  1852. override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_LIBUNITS))
  1853. endif
  1854. fpc_shared:
  1855. ifdef HASSHAREDLIB
  1856. $(MAKE) all CREATESHARED=1 LINKSHARED=1 CREATESMART=1
  1857. ifneq ($(SHARED_BUILD),n)
  1858. $(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR)
  1859. endif
  1860. else
  1861. @$(ECHO) Shared Libraries not supported
  1862. endif
  1863. fpc_shared_install:
  1864. ifneq ($(SHARED_BUILD),n)
  1865. ifneq ($(SHARED_LIBUNITS),)
  1866. ifneq ($(wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),)
  1867. $(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INSTALL_SHAREDDIR)
  1868. endif
  1869. endif
  1870. endif
  1871. .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall
  1872. ifdef INSTALL_UNITS
  1873. override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS))
  1874. endif
  1875. ifdef INSTALL_BUILDUNIT
  1876. override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPPUFILES))
  1877. endif
  1878. ifdef INSTALLPPUFILES
  1879. override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
  1880. ifneq ($(UNITTARGETDIRPREFIX),)
  1881. override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPUFILES)))
  1882. override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPULINKFILES))))
  1883. endif
  1884. override INSTALL_CREATEPACKAGEFPC=1
  1885. endif
  1886. ifdef INSTALLEXEFILES
  1887. ifneq ($(TARGETDIRPREFIX),)
  1888. override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(notdir $(INSTALLEXEFILES)))
  1889. endif
  1890. endif
  1891. fpc_install: all $(INSTALLTARGET)
  1892. ifdef INSTALLEXEFILES
  1893. $(MKDIR) $(INSTALL_BINDIR)
  1894. ifdef UPXPROG
  1895. -$(UPXPROG) $(INSTALLEXEFILES)
  1896. endif
  1897. $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR)
  1898. endif
  1899. ifdef INSTALL_CREATEPACKAGEFPC
  1900. ifdef FPCMAKE
  1901. ifdef PACKAGE_VERSION
  1902. ifneq ($(wildcard Makefile.fpc),)
  1903. $(FPCMAKE) -p -T$(CPU_TARGET)-$(OS_TARGET) Makefile.fpc
  1904. $(MKDIR) $(INSTALL_UNITDIR)
  1905. $(INSTALL) Package.fpc $(INSTALL_UNITDIR)
  1906. endif
  1907. endif
  1908. endif
  1909. endif
  1910. ifdef INSTALLPPUFILES
  1911. $(MKDIR) $(INSTALL_UNITDIR)
  1912. $(INSTALL) $(INSTALLPPUFILES) $(INSTALL_UNITDIR)
  1913. ifneq ($(INSTALLPPULINKFILES),)
  1914. $(INSTALL) $(INSTALLPPULINKFILES) $(INSTALL_UNITDIR)
  1915. endif
  1916. ifneq ($(wildcard $(LIB_FULLNAME)),)
  1917. $(MKDIR) $(INSTALL_LIBDIR)
  1918. $(INSTALL) $(LIB_FULLNAME) $(INSTALL_LIBDIR)
  1919. ifdef inUnix
  1920. ln -sf $(LIB_FULLNAME) $(INSTALL_LIBDIR)/$(LIB_NAME)
  1921. endif
  1922. endif
  1923. endif
  1924. ifdef INSTALL_FILES
  1925. $(MKDIR) $(INSTALL_DATADIR)
  1926. $(INSTALL) $(INSTALL_FILES) $(INSTALL_DATADIR)
  1927. endif
  1928. fpc_sourceinstall: distclean
  1929. $(MKDIR) $(INSTALL_SOURCEDIR)
  1930. $(COPYTREE) $(BASEDIR)/* $(INSTALL_SOURCEDIR)
  1931. fpc_exampleinstall: $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS))
  1932. ifdef HASEXAMPLES
  1933. $(MKDIR) $(INSTALL_EXAMPLEDIR)
  1934. endif
  1935. ifdef EXAMPLESOURCEFILES
  1936. $(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR)
  1937. endif
  1938. ifdef TARGET_EXAMPLEDIRS
  1939. $(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR)
  1940. endif
  1941. .PHONY: fpc_clean fpc_cleanall fpc_distclean
  1942. ifdef EXEFILES
  1943. override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES))
  1944. endif
  1945. ifdef CLEAN_UNITS
  1946. override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
  1947. endif
  1948. ifdef CLEANPPUFILES
  1949. override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
  1950. ifdef DEBUGSYMEXT
  1951. override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES))
  1952. endif
  1953. override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
  1954. override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
  1955. endif
  1956. fpc_clean: $(CLEANTARGET)
  1957. ifdef CLEANEXEFILES
  1958. -$(DEL) $(CLEANEXEFILES)
  1959. endif
  1960. ifdef CLEANPPUFILES
  1961. -$(DEL) $(CLEANPPUFILES)
  1962. endif
  1963. ifneq ($(CLEANPPULINKFILES),)
  1964. -$(DEL) $(CLEANPPULINKFILES)
  1965. endif
  1966. ifdef CLEANRSTFILES
  1967. -$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
  1968. endif
  1969. ifdef CLEAN_FILES
  1970. -$(DEL) $(CLEAN_FILES)
  1971. endif
  1972. ifdef LIB_NAME
  1973. -$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
  1974. endif
  1975. -$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
  1976. -$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT)
  1977. fpc_cleanall: $(CLEANTARGET)
  1978. ifdef CLEANEXEFILES
  1979. -$(DEL) $(CLEANEXEFILES)
  1980. endif
  1981. ifdef COMPILER_UNITTARGETDIR
  1982. ifdef CLEANPPUFILES
  1983. -$(DEL) $(CLEANPPUFILES)
  1984. endif
  1985. ifneq ($(CLEANPPULINKFILES),)
  1986. -$(DEL) $(CLEANPPULINKFILES)
  1987. endif
  1988. ifdef CLEANRSTFILES
  1989. -$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
  1990. endif
  1991. endif
  1992. -$(DELTREE) units
  1993. -$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
  1994. ifneq ($(PPUEXT),.ppu)
  1995. -$(DEL) *.o *.ppu *.a
  1996. endif
  1997. -$(DELTREE) *$(SMARTEXT)
  1998. -$(DEL) fpcmade.* Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
  1999. -$(DEL) *_ppas$(BATCHEXT)
  2000. ifdef AOUTEXT
  2001. -$(DEL) *$(AOUTEXT)
  2002. endif
  2003. ifdef DEBUGSYMEXT
  2004. -$(DEL) *$(DEBUGSYMEXT)
  2005. endif
  2006. fpc_distclean: cleanall
  2007. .PHONY: fpc_baseinfo
  2008. override INFORULES+=fpc_baseinfo
  2009. fpc_baseinfo:
  2010. @$(ECHO)
  2011. @$(ECHO) == Package info ==
  2012. @$(ECHO) Package Name..... $(PACKAGE_NAME)
  2013. @$(ECHO) Package Version.. $(PACKAGE_VERSION)
  2014. @$(ECHO)
  2015. @$(ECHO) == Configuration info ==
  2016. @$(ECHO)
  2017. @$(ECHO) FPC.......... $(FPC)
  2018. @$(ECHO) FPC Version.. $(FPC_VERSION)
  2019. @$(ECHO) Source CPU... $(CPU_SOURCE)
  2020. @$(ECHO) Target CPU... $(CPU_TARGET)
  2021. @$(ECHO) Source OS.... $(OS_SOURCE)
  2022. @$(ECHO) Target OS.... $(OS_TARGET)
  2023. @$(ECHO) Full Source.. $(FULL_SOURCE)
  2024. @$(ECHO) Full Target.. $(FULL_TARGET)
  2025. @$(ECHO) SourceSuffix. $(SOURCESUFFIX)
  2026. @$(ECHO) TargetSuffix. $(TARGETSUFFIX)
  2027. @$(ECHO)
  2028. @$(ECHO) == Directory info ==
  2029. @$(ECHO)
  2030. @$(ECHO) Required pkgs... $(REQUIRE_PACKAGES)
  2031. @$(ECHO)
  2032. @$(ECHO) Basedir......... $(BASEDIR)
  2033. @$(ECHO) FPCDir.......... $(FPCDIR)
  2034. @$(ECHO) CrossBinDir..... $(CROSSBINDIR)
  2035. @$(ECHO) UnitsDir........ $(UNITSDIR)
  2036. @$(ECHO) PackagesDir..... $(PACKAGESDIR)
  2037. @$(ECHO)
  2038. @$(ECHO) GCC library..... $(GCCLIBDIR)
  2039. @$(ECHO) Other library... $(OTHERLIBDIR)
  2040. @$(ECHO)
  2041. @$(ECHO) == Tools info ==
  2042. @$(ECHO)
  2043. @$(ECHO) As........ $(AS)
  2044. @$(ECHO) Ld........ $(LD)
  2045. @$(ECHO) Ar........ $(AR)
  2046. @$(ECHO) Rc........ $(RC)
  2047. @$(ECHO)
  2048. @$(ECHO) Mv........ $(MVPROG)
  2049. @$(ECHO) Cp........ $(CPPROG)
  2050. @$(ECHO) Rm........ $(RMPROG)
  2051. @$(ECHO) GInstall.. $(GINSTALL)
  2052. @$(ECHO) Echo...... $(ECHO)
  2053. @$(ECHO) Shell..... $(SHELL)
  2054. @$(ECHO) Date...... $(DATE)
  2055. @$(ECHO) FPCMake... $(FPCMAKE)
  2056. @$(ECHO) PPUMove... $(PPUMOVE)
  2057. @$(ECHO) Upx....... $(UPXPROG)
  2058. @$(ECHO) Zip....... $(ZIPPROG)
  2059. @$(ECHO)
  2060. @$(ECHO) == Object info ==
  2061. @$(ECHO)
  2062. @$(ECHO) Target Loaders........ $(TARGET_LOADERS)
  2063. @$(ECHO) Target Units.......... $(TARGET_UNITS)
  2064. @$(ECHO) Target Implicit Units. $(TARGET_IMPLICITUNITS)
  2065. @$(ECHO) Target Programs....... $(TARGET_PROGRAMS)
  2066. @$(ECHO) Target Dirs........... $(TARGET_DIRS)
  2067. @$(ECHO) Target Examples....... $(TARGET_EXAMPLES)
  2068. @$(ECHO) Target ExampleDirs.... $(TARGET_EXAMPLEDIRS)
  2069. @$(ECHO)
  2070. @$(ECHO) Clean Units......... $(CLEAN_UNITS)
  2071. @$(ECHO) Clean Files......... $(CLEAN_FILES)
  2072. @$(ECHO)
  2073. @$(ECHO) Install Units....... $(INSTALL_UNITS)
  2074. @$(ECHO) Install Files....... $(INSTALL_FILES)
  2075. @$(ECHO)
  2076. @$(ECHO) == Install info ==
  2077. @$(ECHO)
  2078. @$(ECHO) DateStr.............. $(DATESTR)
  2079. @$(ECHO) ZipName.............. $(ZIPNAME)
  2080. @$(ECHO) ZipPrefix............ $(ZIPPREFIX)
  2081. @$(ECHO) ZipCrossPrefix....... $(ZIPCROSSPREFIX)
  2082. @$(ECHO) ZipSuffix............ $(ZIPSUFFIX)
  2083. @$(ECHO) FullZipName.......... $(FULLZIPNAME)
  2084. @$(ECHO) Install FPC Package.. $(INSTALL_FPCPACKAGE)
  2085. @$(ECHO)
  2086. @$(ECHO) Install base dir..... $(INSTALL_BASEDIR)
  2087. @$(ECHO) Install binary dir... $(INSTALL_BINDIR)
  2088. @$(ECHO) Install library dir.. $(INSTALL_LIBDIR)
  2089. @$(ECHO) Install units dir.... $(INSTALL_UNITDIR)
  2090. @$(ECHO) Install source dir... $(INSTALL_SOURCEDIR)
  2091. @$(ECHO) Install doc dir...... $(INSTALL_DOCDIR)
  2092. @$(ECHO) Install example dir.. $(INSTALL_EXAMPLEDIR)
  2093. @$(ECHO) Install data dir..... $(INSTALL_DATADIR)
  2094. @$(ECHO)
  2095. @$(ECHO) Dist destination dir. $(DIST_DESTDIR)
  2096. @$(ECHO) Dist zip name........ $(DIST_ZIPNAME)
  2097. @$(ECHO)
  2098. .PHONY: fpc_info
  2099. fpc_info: $(INFORULES)
  2100. .PHONY: fpc_makefile fpc_makefiles fpc_makefile_sub1 fpc_makefile_sub2 \
  2101. fpc_makefile_dirs
  2102. fpc_makefile:
  2103. $(FPCMAKE) -w -T$(OS_TARGET) Makefile.fpc
  2104. fpc_makefile_sub1:
  2105. ifdef TARGET_DIRS
  2106. $(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
  2107. endif
  2108. ifdef TARGET_EXAMPLEDIRS
  2109. $(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_EXAMPLEDIRS))
  2110. endif
  2111. fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS))
  2112. fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2
  2113. fpc_makefiles: fpc_makefile fpc_makefile_dirs
  2114. all: fpc_all
  2115. debug: fpc_debug
  2116. smart: fpc_smart
  2117. release: fpc_release
  2118. units: fpc_units
  2119. examples:
  2120. shared: fpc_shared
  2121. install: fpc_install
  2122. sourceinstall: fpc_sourceinstall
  2123. exampleinstall: fpc_exampleinstall
  2124. distinstall:
  2125. zipinstall:
  2126. zipsourceinstall:
  2127. zipexampleinstall:
  2128. zipdistinstall:
  2129. clean: fpc_clean
  2130. distclean: fpc_distclean
  2131. cleanall: fpc_cleanall
  2132. info: fpc_info
  2133. makefiles: fpc_makefiles
  2134. .PHONY: all debug smart release units examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefiles
  2135. ifneq ($(wildcard fpcmake.loc),)
  2136. include fpcmake.loc
  2137. endif
  2138. .NOTPARALLEL:
  2139. SYSTEMPPU=syspalm.ppu
  2140. include $(INC)/makefile.inc
  2141. SYSINCDEPS=$(addprefix $(INC)/,$(SYSINCNAMES))
  2142. include $(PROCINC)/makefile.cpu
  2143. SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
  2144. SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
  2145. $(PRT0)$(OEXT) : $(CPU_TARGET)/$(PRT0).as
  2146. $(AS) $(ASTARGET) -o $(UNITTARGETDIRPREFIX)$(PRT0)$(OEXT) $(CPU_TARGET)/$(PRT0).as
  2147. $(SYSTEMUNIT)$(PPUEXT) : $(SYSTEMUNIT).pp $(SYSDEPS)
  2148. $(COMPILER) -Us -Sg $(SYSTEMUNIT).pp
  2149. objpas$(PPUEXT): $(OBJPASDIR)/objpas.pp $(INC)/except.inc $(SYSTEMUNIT)$(PPUEXT)
  2150. $(COMPILER) -I$(OBJPASDIR) $(OBJPASDIR)/objpas.pp
  2151. strings$(PPUEXT) : $(INC)/strings.pp $(INC)/stringsi.inc\
  2152. $(PROCINC)/strings.inc $(PROCINC)/stringss.inc\
  2153. $(SYSTEMUNIT)$(PPUEXT)
  2154. fmtbcd$(PPUEXT) : $(OBJPASDIR)/fmtbcd.pp objpas$(PPUEXT) sysutils$(PPUEXT) variants$(PPUEXT) classes$(PPUEXT) system$(PPUEXT)
  2155. $(COMPILER) $(OBJPASDIR)/fmtbcd.pp
  2156. staticlib:
  2157. make clean
  2158. make all SMARTLINK=YES LIBNAME=fpc LIBTYPE=static
  2159. sharedlib:
  2160. make clean
  2161. make all
  2162. $(PPUMOVE) -o fpc $(SHAREDLIBFILES)
  2163. staticlibinstall: staticlib
  2164. $(MKDIR) $(STATIC_LIBINSTALLDIR)
  2165. $(MKDIR) $(STATIC_UNITINSTALLDIR)
  2166. $(INSTALLEXE) libfpc$(STATICLIBEXT) $(STATIC_LIBINSTALLDIR)
  2167. $(INSTALL) *$(PPUEXT) *$(OEXT) $(STATIC_UNITINSTALLDIR)
  2168. sharedlibinstall: sharedlib
  2169. $(MKDIR) $(SHARED_LIBINSTALLDIR)
  2170. $(MKDIR) $(SHARED_UNITINSTALLDIR)
  2171. $(INSTALLEXE) libfpc$(SHAREDLIBEXT) $(SHARED_LIBINSTALLDIR)
  2172. $(INSTALL) *$(PPUEXT) *$(OEXT) $(SHARED_UNITINSTALLDIR)
  2173. ldconfig
  2174. libinstall: staticlibinstall sharedlibinstall
  2175. libsclean : clean
  2176. -$(DEL) *$(SMARTLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)