Makefile 70 KB

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